#pragma pack(n)

设定边界对齐字节数为 n

边界对齐原则:
  1. 默认对齐和设定对齐中取小的那个数作为对齐字节数,例如设定了边界对齐为 8,但 unsigned int 类型默认是以 4 个字节对齐,所以取小的那个为 4 个字节
  2. 复杂成员(数据结构)按复杂成员中最大的一个数据的对齐方式进行对齐
  3. 对齐后的长度必须是成员中最大长度的整数倍

更多推荐