struct ll
{
int a;
char b;
double c;
char d;
}s;
struct Foo {
struct ll m;
int c;
}f;
int main()
{
cout<<"ll size ="<<sizeof(f)<<endl;
}
输出结果32;
符合类型的情况下,在ll当中,总体的对齐方式为double类型的,因此应当为8,第一个 a占为4个字节,第二个占为1个字节,由于后面的为double类型,因此应当将其补齐为4个字节,因此前面的攻占为为8个字节,这样后面d的占得字节数目应当为,8个字节,最终ll的字节应当为24个字节,同时整个符合类型FOO占为的标准应当也以8个字节来处理,因此整个的占为长度应当为32位。