「已注销」
2016-06-04 08:45
采纳率: 100%
浏览 1.5k
已采纳

新手提问,关于C语言共用体字节数

遇到有关共用体字节数的题目,于是我用写了一小段代码输出共用体的字节数,但发现了一点问题:
#include
#include
#include
int main(){
union aa{
int x,y;
char c[6];
}a;
printf("%d", sizeof(a));
return 0;
}

当共用体只有字符数组c时,共用体字节数为6
图片说明

只有x,y时,字节数为4
图片说明

问题来了:
当两者都有时,按照理论,共用体字节数应该为6,但运行结果是8
图片说明

这是为什么呢?

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

2条回答 默认 最新

相关推荐 更多相似问题