手抄报 安全手抄报 手抄报内容 手抄报图片 英语手抄报 清明节手抄报 节约用水手抄报

C语言中结构体计算大小的规则

时间:2024-10-13 19:17:22

1、printf("char:%d\n",sizeof(char)); printf("float:%d\n",sizeof(float)); printf("int:%d\n",sizeof(int)); printf("double:%d\n",sizeof(double));//打印出各类型变量的大小

C语言中结构体计算大小的规则

2、printf("s1:%d\n",sizeof(struct s1)); printf("s2:%d\n",sizeof(struct s2)); printf("s3:%d\n",sizeof(struct s3)); printf("s4:%d\n",sizeof(struct s4)); printf("s5:%d\n",sizeof(struct s5)); printf("s6:%d\n",sizeof(struct s6)); printf("s7:%d\n",sizeof(struct s7));//打印出各个结构体的大小

C语言中结构体计算大小的规则

3、struct s1{ char ch1;//1 char ch2;//1 int i;//4};//结构体花括号后面要记得加;

C语言中结构体计算大小的规则

4、struct s2{ char ch1;//1 int i;//4 char ch2;//1};

C语言中结构体计算大小的规则

5、struct s3{ char ch;//1 int i;//4 char str[10];//10};

C语言中结构体计算大小的规则

6、struct s4{ char ch;//1 int i;//4 struct s{//8 char ch1;//1 int j;//4 }stmp;//结构体只是一个声明,不占空间 float f;//4};

C语言中结构体计算大小的规则

7、struct s5{ char ch; int i; union{ //联合结构体,只按照里面最大的来算 char ch1; int j; };};

C语言中结构体计算大小的规则

8、//#pragma pack(4)//指定向4,最大是8,如有超出指定范围,就按照指定范围的来计算struct s6{ char ch;//1 int i;//4 float f;//4 double d;//8 };#pragma pack(10)//如没有超出指定范围,就按照最大的来计算struct s7{ char ch; int i; float f; double d; };

C语言中结构体计算大小的规则

9、运行程序,结构体的对齐方式很浪费空间,可是按照计算机的访问规则,效率提高了。

C语言中结构体计算大小的规则
© 手抄报圈