我遇到了关于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)