//结构体对齐标准大小:N=min(参数、结构体成员中最大的,比较取两者中小的)
#include <stdio.h>
#pragma pack(1)
struct aaaaaaa{
char a;
short b;
short bb;
__int64 c;
long e;
__int64 d;
short dd;
long f;
};
#pragma pack()
void main()
{
aaaaaaa abc={1,2,3,4,5,6,7,8};
printf("%d\n",sizeof(abc));
getchar();
return;
}
该博客主要讨论了C语言中结构体的内存对齐规则,通过一个实例展示了不同数据类型在结构体中的排列方式,以及如何使用pragma pack来调整对齐标准。内容涵盖了__int64等大尺寸数据类型在结构体中的存储问题,对于理解C语言内存管理和效率优化具有重要意义。

302

被折叠的 条评论
为什么被折叠?



