在C语言中,可以使用两种方法来初始化联合体:
示例代码如下:
union MyUnion {
int a;
float b;
};
int main() {
union MyUnion u1 = {.a = 10}; // 使用成员名初始化
union MyUnion u2 = {.b = 3.14f};
return 0;
}
在这个例子中,使用了成员名.a
和.b
来分别初始化联合体u1
和u2
的成员。
示例代码如下:
union MyUnion {
int a;
float b;
};
int main() {
union MyUnion u1 = {10}; // 使用位置初始化
union MyUnion u2 = {3.14f};
return 0;
}
在这个例子中,根据成员的顺序,依次提供了初始化的值。这种方法不需要使用成员名。
无论使用哪种方法,联合体只能初始化一个成员,其他成员将被置为未定义的值。