联合变量的定义有3种方法:
1先声明联合类型,再定义联合变量
union ClassOrOfficeType
{
int clas;
char office[10];
};
union ClassOrOfficeType classOrOffice;
2声明联合类型的同时定义联合类型变量
union ClassOrOfficeType
{
int clas;
char office[10];
}classOrOffice;
3直接定义联合类型变量
union
{
int clas;
char office[10];
}classOrOffice;
经定义后的classOrOffice变量为ClassOrOfficeType类型
classOrOffice变量的长度应等于ClassOrOfficeType的成员中最长的长度,即等于office数组的长度,一共10个字节,从图中可见,classOrOffice变量入赋予整型值时,只使用了4个字节,而赋予字符数组时,可用10个字节