???????????????????????1?????????S1?????????sizeof????????????????4????????????2????????ж???struct??С???????struct?У?????????.
???????????????μ????????
????· __attribute((aligned (n)))?????????????????????n????????????????????г??????????n????????????????????
????· __attribute__ ((packed))????????????????е??????????????????????????ж???
?????????
????struct S3 { };
????sizeof( S3); // ????1
????“?????”?????????????????С???0??????1?????????“??????”???????α????????????????“?????”????????ε??????????????“?????”?????????洢????????????????????????????????????λ???
??????static?????

 

struct S4{
char a;
long b;
static long c; //???
};

??????????????????????????????sizeof??????з????????С??????????????S4???С?4+4=8??

 

struct S5{
char c;
int i;
};
struct S6
{
char c1;
S5 s;
char c2
};

????S5??????????????int??S6?????????????????S5“???”?????????S6?????????int???????????S6????????????洢????????????4??????????sizeof(S6)????????4??????c1????????0??s????????????s????????壬??????????????????????????????????С?8????????4??c1??s???????3???????????c2??s?????????????c2????????12??????c2???С?13??13??????4????????????β???ò???3?????????????sizeof(S6)????16??