内存对齐
现在计算机中的地址都是按byte分的,各类型数据并非是一个接一个的排放,而是按照一定的规则在空间上排列,这就是对齐
基本数据类型长度
当使用sizeof运算符求结构体空间大小时,会自动考虑到字节对齐问题
对齐规则:
假设按4字节对齐,则每个数据类型占的空间为4或者4的倍数,当长度不足时则补齐
struct One
{
char a;
double b;
int c;
}
a | null | null | null |
b | b | b | b |
b | b | b | b |
c | c | c | c |
如上例子中One的大小为(1+8+4)+3=12