/* 范例9-10 */#include stdio.hunion /* 无自定义union类型名称的声明 */{int c;char d;}cd; /* 声明 定义 */union data /* 有union类型名称声明 */{int a;float d;char b;}; /* 只声明 */void main(void){data var1; /* 定义 */data var2{3.1415}; /* 初始化var2.a 3(自动转换) */printf(var2.a %d\n,var2.a); /* 自动转换为3 */printf(var2.d %f\n,var2.d); /* 非3.1415 */printf(Size of var1 %d\n,sizeof(var1));var1.a3; /* 使用 */printf(var1.a%d\n,var1.a); /* a3 */var1.bA;printf(var1.a%d\n,var1.a); /* a65(a 被覆写了) */getchar();}程序执行结果var2.a 3var2.d 0.000000Size of var1 4var1.a3var1.a65