sizeof的基本用法的整理
来源:互联网 发布:c语言for循环语句 编辑:程序博客网 时间:2024/06/05 08:24
该文章只是用来记忆,如果有错误,希望大神们能够告知小弟进行改正。
sizeof是c/c++中判断类型长度符的操作符,而不是函数。
默认sizeof是在编译期执行的,但是在C99标准中规定,sizeof也可以在运行时刻进行计算,所以sizeof能够正确计算动态数组的长度。
一. 基本类型的sizeof()
对于基本类型,sizeof都将等于其基本类型的长度
sizeof(int); //值为4
sizeof(double); //值为8
sizeof(10); //值为4
sizeof(8.8); //值为8
二. 数组类型的sizeof()
(1) 对于静态数组类型,sizeof都将等于其定义时的长度
int a[3];
sizeof(a); //值为3
(2) 对于动态数组类型,sizeof都将等于其定义时的长度(此时sizeof在运行时刻进行计算)
int n;
scanf("%d", &n);
char a[n];
sizeof(a); //值为输入的n的值
三. 指针类型的sizeof()
对于指针类型,sizeof都将等于计算机内部地址总线的长度,32位机器将等于4
char *p;
sizeof(p); //值为4
四.结构体类型的sizeof()
字节对齐的三个原则:
(1) 结构体成员的首地址能够被其最长基本类型成员的大小整除。
(2) 结构体每个成员相对于结构体首地址的偏移量,都是这个成员大小的整数倍,如有需要编译器会自动为这个成员进行填充。
(3) 结构体的总大小为结构体最长基本类型成员的大小的整数倍,如有需要将在最后一个成员后进行填充。
根据进行字节对齐后的结构体计算出sizeof的值
struct s1{
char a;
int b;
}
sizeof(s1); //值为8, char类型向最长基本类型成员int对齐
- sizeof的基本用法的整理
- sizeof strlen memset的基本用法
- sizeof strlen memset的基本用法
- sizeof strlen memset strncpy的基本用法
- sizeof strcpy memset 的基本用法
- sizeof strlen memset的基本用法
- strlen 和 sizeof 的基本用法(举例)
- 基本类型转换规则和sizeof的用法
- 整理sar的基本用法
- sizeof的一点点整理
- sizeof的的用法
- 基本数据类型的sizeof
- sizeof的用法
- sizeof的用法
- sizeof的用法
- sizeof的用法
- sizeof 的用法
- sizeof 的用法
- android volley
- 计算机视觉 -- 最优化阈值
- web.xml在web项目中的作用,没有web.xml怎么配置项目
- 八大排序算法实战:思想与实现
- MySQL数据备份"--no-beep"异常解决
- sizeof的基本用法的整理
- 贵安新区飘起“数据云”
- CS231nNeural Networks Part 1: Setting up the Architecture
- 在SpringMVC 中使用 Thymeleaf 模板引擎
- ObjectARX编程(五) ---------符号表中层表的操作
- 如何在linux 下 root用户密码丢失情况下,获得root权限
- 爬取网页的通用代码框架
- PHP7.0 的新特性你知道多少?
- H264参数结构二:网络提取层NAL (Net Abstraction Layer) & 视频编码层VCL (Video Coding Layer)