程序是:
typedef struct xp {
int a:2;
int b:2;
int c:1;
} xp;
int main(void)
{
xp x;
memset(&x, 0, sizeof(xp));
x.a = 1;
x.b = 3;
x.c = 1;
printf("%d\n",x.a);
printf("%d\n",x.b);
printf("%d\n",x.c);
return 0;
}
我得到 1 -1 -1,为什么?a、b 和 c 如何存储在 x 中?printf("%d\n",xa); 时发生了什么 被执行?