C语言 枚举

所谓枚举就是把可能的值都一一列举,变量的值将仅限于列举的值中。

一、声明枚举类型

1
enum 枚举类型名字{枚举元素列表}

例如:

1
enum Weekday {sun, mon, tue, wed, thu, fri, sat};

二、定义枚举变量

1.先声明枚举类型,再定义枚举变量

1
enum 枚举类型名字 枚举变量名;

2.直接定义枚举变量

1
enum {枚举元素列表} 枚举变量名;

三、注意事项

1.枚举变量值只能在声明时定义的枚举元素中取得

2.每一个枚举元素都代表一个整数

C 语言会在编译时将它们赋值为 0, 1, 2 ··· 。

例如:

1
enum Weekday {sun, mon, tue, wed, thu, fri, sat};

此时 sun 设为 1 , mon 设为 2 ,··· 。

若有赋值语句 day1 = sun ,它相当于 day1 = 0

3.可以在声明时只能每个元素代表的值

例如:

1
enum 类型名{a , b = 7, c, d, e = 3, f};

此时,

a = 0 ;

b = 7 ;

c = 8 ;

d = 9 ;

e = 3 ;

f = 4 。

参考