求助:sizeof(struct a) 问题
求助:sizeof(struct a) 问题代码如下:
#include "stdio.h"
/* ++++++++++++++++++ */
int checksize()
{
struct a
{
unsignedchar a1;
unsigned short a2;
unsigned char a11;
unsigned long a4;
unsigned char a111;
unsigned short a22;
unsigned char a1111;
};/*12*/
printf("the sizeof(unsigned char)is: %3d\n\n",sizeof(unsigned char));
printf("the sizeof(unsigned short) is: %3d\n\n",sizeof(unsigned short));
printf("the sizeof(unsigned int) is: %3d\n\n",sizeof(unsigned int));
printf("the sizeof(unsigned long)is: %3d\n\n",sizeof(unsigned long));
printf("the 12-20 sizeof(struct a) is: %3d\n\n",sizeof(struct a));
getchar();
return 1;
}
main()
{
checksize();
return;
}
sizeof(struct a) 应该是12字节,可在VC++中是20字节,在C中也是12字节。请教高手。
字节对齐问题,你google一下吧
页:
[1]