Appearance
初始化
1. 直接初始化
就是在声明的时候直接初始化了:
c
union AA
{
int a;
char b;
double c;
} s={100}, //直接定义 默认是第一个变量的值
s1={.b='k'};//直接定义,制定为某个变量赋值[!warning] 注意
初始化直接赋值, 只能赋给第一个元素, 如果输入类型不对也是强制类型转换给第一个元素, 可以通过
.元素名的方式赋值.
2. 间接初始化
c
union AA k = {200};
union AA k1 = {.c=1.2};
k.c = 'h';和直接赋值差不多, 可以参考一下结构体.
问题
如果一个结构体变量没有 union 里的 a 属性, 如果输出 a 属性, 会强制输出 b 属性?