对齐规则如下:
1、 结构体的大小等于结构体内最大成员大小的整数倍
2、 结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相对于结构体的首地址的地址偏移量应该是8的倍数。
3、 为了满足规则1和2编译器会在结构体成员之后进行字节填充!
注:
1. 内存对齐只是一种用空间来换时间的方法。
2. 实际上不同的编译器他的优化规则并不完全相同。
对齐规则如下:
1、 结构体的大小等于结构体内最大成员大小的整数倍
2、 结构体内的成员的首地址相对于结构体首地址的偏移量是其类型大小的整数倍,比如说double型成员相对于结构体的首地址的地址偏移量应该是8的倍数。
3、 为了满足规则1和2编译器会在结构体成员之后进行字节填充!
注:
1. 内存对齐只是一种用空间来换时间的方法。
2. 实际上不同的编译器他的优化规则并不完全相同。