结构体的对齐规则
第一步:确定分配单位(每行开辟多少字节)
结构体中最大的基本类型的长度 为分配单位。
【
#pragma pack (value)时的指定对齐值value
min(value,最大的基本类型的长度) 为分配单位。
】
第二步:确定成员的偏移位置。
偏移位置:成员自身类型的整数倍(0~n倍)
(如果是结构体嵌套结构体,那么结构体成员的偏移位置为结构体成员的最大基本类型的整数倍)
第三步:收尾工作:
结构体的总大小必须是分配单位的整数倍。
参考:https://www.cnblogs.com/123wh/p/14383142.html