1.联合体
1.1联合体类型的声明
和结构体一样,联合体也是由一个或者多个成员构成,这些成员可以是不同类型。但是编译器只为最大的成员结构分配足够的内存空间,联合体的特点是所有成员共用一块内存空间。所以联合体也叫:共用体。
给联合体其中一个成员赋值,其他成员也会跟着变化。
输出结果为4,这是什么原因呢?
1.2联合体的特点
联合体成员是共用一块内存空间的,这样一个联合体的大小,至少是最大成员的大小(因为联合体有能力保存最大的那个成员)。
仔细观察,联合体的每个类型第一个地址都对齐,同时保存在最大的类型当中。
1.3联合体大小的计算
联合体的大小至少是最大成员的大小,当最大成员不是最大对齐数的整数倍时候,就要对齐到最大对齐数的整数倍。
2.枚举类型
2.1枚举类型的声明
枚举顾名思义就是一一列举。
诸如此类。上述的day为枚举类型而mon,Fri则为枚举常量。