私は C/C++ を初めて使用しますが、私が見ている問題について知りたいと思っていました。
typedef union
{
int a;
float c;
char b[20];
}
Union;
int main()
{
Union y = {100};
printf("Union y :%d - %s - %f \n",y.a,y.b,y.c);
}
そして、出力は
Union y :100 - d - 0.000000
私の質問は...なぜ「d」が印刷されるのですか? ユニオンの順序を変更しても同じ出力です。しかし、共用体の外で char f[20] を宣言すると、何も出力されません。私は MacBook ライオン イメージを持っていて、xcode を使用しています。前もって感謝します