首页 > 代码库 > #pragma pack([n|push|pop]) 用法

#pragma pack([n|push|pop]) 用法

#pragma pack():

取消用户自定义的结构体成员(或类的数据成员)的对齐方式,恢复编译器默认的对齐方式(VC++和GCC编译器默认8个字节对齐,并且,我们可以在编译器的设置里更改编译器的默认设置)。

 

#pragma pack(n):

n可以取以下这5个数中的任意一个:1、2、4、8、16

自定义结构体成员的对齐方式。

 

#pragma pack(push):

英文单词push是“压”的意思。编译器编译到此处时将保存对齐状态。

 

#pragma pack(pop):

英文单词pop是”取“的意思。编译器编译到此处时将恢复保存时的对齐状态(请在使用该预处理命令之前使用#pragma pack(push))。