#pragma pack(n)
n的取值可以为1、2、4、8,在编译过程中按照n个字结对齐
#pragma pack()
取消对齐,按照编译器的优化对齐方式对齐
__attribute__ ((packed));
是说取消结构在编译过程中的优化对齐。
__attribute__ ((aligned (n)));
让所作用的成员对齐在n字节自然边界上,如果结构中有成员的长度大于n,则按照机器字长来对齐
gcc手册中说了不建议使用 #pragma,而且#pragma最多只能支持8字节的对齐.
阅读(1479) | 评论(0) | 转发(0) |