【C/C++】枚举类型

零.导言

        枚举,顾名思义,就是一一列举。枚举类型的作用就是把可以一一列举的变量的取值列举出来。


一.枚举类型的声明

        我们先来看下面这一段代码:

enum Sex
{
    MALE,
    FEMALE,
    SECRET
};

        显而易见的上述代码定义了一个枚举类型Sex。这个枚举类型有三种可能的取值,分别是:MALE,FEMALE,SECRET。显然,性别的类型只能是男,女,保密这三种类型。使用枚举类型可以使变量的值更加有可读性。

        在形式上,枚举类型的声明和结构体,联合体有相似之处,但是要注意的是,“可能的取值”后加的是逗号,而非分号


二.枚举类型变量的取值

         如上述代码所示,此枚举变量包含三个可能的取值:MALE,FEMALE,SECRET。事实上,这三个取值分别对应的数字是 0,1,2。让我们打印出来看看:

        以此类推,若一个枚举变量拥有更多的取值,则从上到下分别默认为从 0 开始递增的自然数。同时,若你想对枚举常量的取值赋初值,这同样是可行的:

enum Sex
{
    MALE = 2,
    FEMALE = 4,
    SECRET = 6
};

        这样,打印出来的数字则为 2,4,6。


三.枚举类型的优点

        其实,#define 也可以定义变量,如:

#define MALE 0
#define FEMALE 1
#define SECERT 2

        那么,枚举类型的优势是什么呢:

  1. 增加代码的可读性和可维护性。
  2. 和#define定义的标识符比较枚举有类型检查,更加严谨。
  3. 便于调试,预处理阶段会删除 #define 定义的符号。
  4. 使用方便,一次可以定义多个常量。
  5. 枚举常量是遵循作用域规则的,枚举声明在函数内,只能在函数内使用。

四.相关链接

        【C/C++】结构体的定义-优快云博客

        【C/C++】联合体-优快云博客


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值