小编Sum*_*ius的帖子

在C中初始化一个联合

我遇到了关于C编程语言的这个客观问题.以下代码的输出应该是0 2,但我不明白为什么.

请解释初始化过程.这是代码:

#include <stdio.h>

int main()
{
  union a
  {
    int x;
    char y[2];
  };
  union a z = {512};
  printf("\n%d %d", z.y[0], z.y[1]);
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

c initialization unions

27
推荐指数
3
解决办法
1420
查看次数

标签 统计

c ×1

initialization ×1

unions ×1