//#pragma pack(1)
//typedef char ch[3];
struct TestStruct{
char c1;
short s;
char c2;
int i;
};
struct TestStruct1{
char c1;
char c2;
short s;
int i;
};
int main(void)
{
struct TestStruct a;
struct TestStruct1 b;
printf("sizeof a =%d/n",sizeof a);
printf("sizeof b=%d/n",sizeof b);
printf("%d/n",(unsigned int)(void *)&a.s-(unsigned int)(void *)&a.c1);
printf("%d/n",(unsigned int)(void *)&a.c2-(unsigned int)(void *)&a.s);
printf("%d/n",(unsigned int)(void *)&a.i-(unsigned int)(void *)&a.c2);
printf("==========================================/n");
printf("%d/n",(unsigned int)(void *)&b.c2-(unsigned int)(void *)&b.c1);
printf("%d/n",(unsigned int)(void *)&b.s-(unsigned int)(void *)&b.c2);
printf("%d/n",(unsigned int)(void *)&b.i-(unsigned int)(void *)&b.s);
return 0;
}