当我们看过了结构体和联合体,那么我们接下来就将学习枚举。这也许对大家又是一个新的知识点。大家不要急,我来给大家简单的总结一下。先看名字,枚举就是一个个列举。这样大家应该比较熟悉吧。如一周有七天。这个肯定要分开列举出来吧,颜色。每种颜色要分开吧。这些有明确区分点的肯定需要分开列举吧。所以大家就可以将枚举简单的理解为一个一个的列举出来。好,当我们知道枚举的大概意思了,那么枚举长什么样子嘞,如何创建和有什么特点需要注意的嘞。我们就看下面的内容。
枚举创建
enum Day//星期
{
Mon,
Tues,
Wed,
Thur,
Fri,
Sat,
Sun
};
大家看到了吧,枚举与结构体,联合体的创建是差不多的。就是一个enum+枚举名然后就是枚举成员了。
大家可以看到,当我将枚举的前4个内容打印出来的时候,直接打印的是0~3。那么剩下的肯定也是接着加一的。当然我们也可以直接赋初始值如:
我们直接给枚举常量赋初始值,赋了值的那么他就会按照赋的值打印,如果没赋值的话,那么他就是前一个常量加一。开头就是0。但大家要注意一下的是,加一只对与后面的常量有用,如果中间的那个常量赋值但前面的那个没赋值的话,那他该是多少就是多少。
枚举优点
大家看了上面的照片应该会想,对呀。明明可以直接#define,比枚举方便,又不需要写那么多,还更直观嘞。但其实大家想一下,虽然这看上去要好一点,但要是我们随便改一下#define的话,岂不是牵一发而动全身。都要一个接着一个改。是吧。还有就是便于调试,预处理阶段会删除 #define 定义的符号,使⽤⽅便,⼀次可以定义多个常量,枚举常量是遵循作⽤域规则的,枚举声明在函数内,只能在函数内使⽤