结构体对齐的原则是:结构体的大小必须是其最大成员大小的整数倍 常用的大小: int 占4个字节 float 占4个字节 char 占1个字节 double 占8个字节 short 占2个字节 char a[x] 占x个字节 如何计算一个结构体所占字节: ex:
struct example1{
double score;//占8个字节
short age;//占2个字节
};
先算“本来”占几个字节:8+2=10 而此处最大的成员为“double”为8个字节,而10不是8的整数倍,所以结构体应该要占用8*2=16个字节 此时是short”补上“6个字节。