2.枚举
枚举也可以自定义数据类型
声明枚举类型使用enum关键字,使用枚举类型可以增加程序的可读性
枚举类型中规定一组固定的名称,可以在程序中把这些名字当做数字使用
计算机为枚举第一个名字分配数字0,以后一次递增
也可以在声明枚举类型指定某个名字配对的整数,该名字后面的所有名称所配对的整数都会发生变化
enum 枚举类型名{
名字1,名字2,名字3.....
};
enum 枚举类型名 枚举变量名;
typedef enum 枚举类型名{
名字1,名字2,名字3.....
} 枚举类型别名;
枚举类型别名 枚举变量名;
当我们不关心名字所配对的数值而希望提高程序的可读性,可以使用枚举类型。否则使用宏定义
3.联合(共用)类型
联合也可以用来定义新的数据类型
声明联合使用union关键字
联合声明的语法和结构体完全一样
联合中所有子变量在内存中的起点都一样
整个联合的大小是其中最大子变量的大小
联合中所有的子变量之间会互相影响,修改其中一个子变量会影响其他子变量的值
联合可以用不同方式使用同一段内存空间
如果任何时候都只会使用多个数据中的其中一个,就可以使用联合