私はK&RCを学んでいます。6.8章では次のように述べています。
ユニオンは、最初のメンバーのタイプの値でのみ初期化できます。したがって
u
、上記の和集合は整数値でのみ初期化できます。
...そしてユニオンuを次のように定義します。
union u_tag {
int ival;
float fval;
char *sval;
} u;
私はこれを理解する方法がわかりません。これはどういう意味ですか、の初期化は次のようにするu
必要があります。
u.ival = 323;
明らかに、そうではありません。なぜなら、私は次のように初期化できるからですu
。
u.fval = 1.0;
また
u.sval = "hi";
リッチーとはどういう意味ですか?