
1.1 与结构体的声明类似,成员变量间用, 而不是用;。下面代码为声明时不对成员赋初始值的声明语句
//声明枚举类型color,其可取值为:red, green, yellow
enum color
{
red,
green,
yellow //red, green, yellow为枚举常量,其类型为int型,不可修改;其值不可改变,但是可以赋初始值,如果不赋初始值,默认第一个从0开始,依次递增1
};
1.2 声明的同时对成员赋初始值
//声明枚举类型sex, 其可取值为male, female, unknown
enum sex
{
male=1, //将male初始值设置为1,在使用male的时候相当于使用1
female=3,
unknown
};
二、枚举变量的使用
2.1 下面的代码演示了定义枚举变量并赋值,赋值之后使用该变量的语句
int main()
{
enum color c = yellow; //定义一个枚举color类型的变量,赋值为yellow
printf("%d\n", c); //打印结果为2
c = red; //将枚举color类型的变量值更改为red
//c = 2; //这里,c是枚举color型变量,2是int型变量,所以将2赋值给c是错误的,但是c语言下没有报错,如果实在c++下面,会报错
printf("%d\n", c); //打印结果为0
enum sex s = unknown;
printf("%d\n", s); //打印结果为4
return 0;
}
2.2 巧妙的使用枚举类型,可以增加代码的可读性
比如使用swicth语句时,如果直接使用数字,我们无法直接看出该条件下需要进行什么相应的 *** 作,此时我们可以借助枚举变量,定义出指定数字要执行的 *** 作名称,在swicth语句的条件出,就可以清楚的知道要进行什么 *** 作
1.增加代码的可读性和可维护性
2.相对于#define定义的常量,具有类型检查,更加严谨
3.防止命名污染
4.便于调试
5.使用方便,一次可以定义多个常量
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)