第一种
#pragma pack(push, 1) // 先把当前对齐设置压栈,再设置为1字节对齐
struct S
{
char a;
int an[];
};
#pragma pack(pop) // 恢复先前压栈的设置
#pragma pack(push, 1)相当于
#pragma pack(push)
#pragma pack(1)
第二种
#pragma pack (n) //作用:C编译器将按照n个字节对齐。
struct S
{
char a;
int an[];
}
#pragma pack () // 作用:取消自定义字节对齐方式