union结构是开辟一块空间,多种数据结构共用这一块空间。
//union共用体例子如下:
typedef union{
short count;
float weight;
float volume;
}quantity;
union共用体设置值的方式:
1.C89方式
//如果联合要保存第一个字段的值,就可以用C89表示法,只要用花括号把值括起来,就可以把值赋给联合中第一个字段。
quantity q = {4};
2.指定初始化器
就是用{. 共用体参数}的方式
//指定初始化器(designated initializer)按名设置联合字段的值:
quantity q = {.weight=1.5}
注:指定初始化器法同样适用于结构体
3.“点”表示法
//第三种设置联合值的方法是在第一行创建变量,然后在第二行设置字段的值。
quantity q;
q.volume=3.7;
参考:《嗨翻C语言》第五章