![d8f1303b1f50bf9d6195af3347fd6de2.png](https://i-blog.csdnimg.cn/blog_migrate/e08350d2744b056fa9021520c67ec33a.jpeg)
一、共用体
共用体和结构体有些类似,它们都有多个数据成员。不同的是,结构体的多个数据成员是各自独立分别存放的。
而共用体的多个数据成员却是保存在内存中的同一个位置,它们“共用”一段内存资源,所以被称为“共用体”。
同结构体变量一样,也可以通过“.”引用共用体的数据成员。
注意:共用体的各个数据成员共用同一内存资源,如果将共用体某一数据成员修改后,它所在的内存的值会发生变化,相应的这个共用体的其它数据成员也会发生变化。
二、枚举
C语言中的枚举类型,其实质是就是一个Int类型的数据。而所谓的枚举值,不过就是给一些位于某个范围内的整数值(由编译器给定或者程序员在代码中给定)一个容易记忆和使用的标识符(名字)。使用这个有意义的名字给变量赋值,在一定程度上可以提高代码的可读性。
enum TraficLight
{
Green=1, //给定枚举值
Rea,
Yellow
};
Int main()
{
enum TraficLight light;
Light = red; //为枚举类型赋值
return 0;
}
枚举值通常表达的是某一个范围内的有限的可选值,且枚举值可以作为常量使用,所以往往使用枚举值来作为switch语句的分支条件,表达对某一范围