系统相关
首页 > 系统相关> > 117、说一说你理解的内存对齐以及原因

117、说一说你理解的内存对齐以及原因

作者:互联网

1、 分配内存的顺序是按照声明的顺序。

2、 每个变量相对于起始位置的偏移量必须是该变量类型大小的整数倍,不是整数倍就空出内存,直到偏移量是整数倍为止。

3、 最后整个结构体的大小必须是里面变量类型最大值的整数倍。

 

添加了#pragma pack(n)后规则就变成了下面这样:

1、 偏移量要是n和当前变量大小中较小值的整数倍

2、 整体大小要是n和最大变量大小中较小值的整数倍

3、 n值必须为1,2,4,8…,为其他值时就按照默认的分配规则

标签:变量,中较,整数倍,偏移量,117,小值,内存,大小,对齐
来源: https://www.cnblogs.com/crbhf/p/15025675.html