字节对齐规则

  • 编译器有一个默认的对齐参数,也叫对齐模数
  • 可以通过pack(n)指定,n合法值1,2,4,8,16
  • 基本类型的有效对齐参数:本身对齐参数和指定对齐参数中较小的参数,即 min(sizeof(基本类型), 指定对齐参数)
  • 非基本类型的有效对齐参数:成员中有效对齐参数最大的值,即max(成员有效对齐参数)
  • (成员起始地址相对结构的起始地址偏移) % (成员有效对齐) == 0
  • (结构的总大小) % (结构的有效对齐) == 0

REF

https://blog.csdn.net/chengonghao/article/details/51674166
https://blog.csdn.net/lgouc/article/details/8235471

你可能感兴趣的:(字节对齐规则)