1.引子 在结构中,编译器为结构的每个成员按其自身的自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。 例如,下面的结构各成员空间分配情况(假设对齐方式大于2字节,即#pragma pack(n), n = 2,4,8...下文将讨论#pragmapack()): 代码如下:struct test { char x1; short x2; float x3; char x4;}; 结构的第一个成员x1,其偏移地址为0,占据了第1个字节。第二个成员x2为short类型,