将变量的值一一列举出来,变量的值只限于列举出来的值的范围内
使用枚举的时候,需要定义枚举类型,在定义枚举变量
1定义方法
enum 枚举类型名{
枚举值列表;};
在枚举值表中应列出所有可用值,也称为枚举元素
枚举元素是常量默认从零开始,枚举变量仅能取枚举值所列元素
2枚举变量的定义方法
enum 枚举类型名 枚举变量名
enum week //枚举类型
{
mon,tue,wed,thu,fri,sat,sun
};
enum week workday, weekday;//枚举类型
//workday与weekday只能取mon...sun中的一个
//workday=mon;//正确
//workday=abc;//错误,枚举值中没有abc
#include<stdio.h>
enum week //枚举类型
{
mon,tue,wed,thu,fri,sat,sun
};
int main()
{
enum week workday;
workday = fri;
printf("workday=%d\n", fri);//这个打印出来结果是四,类比数组fri在week枚举中下表是4
//tue=8;//错误,因为tue是常量,无法给常量赋值
return 0;
}
3 注意:
(1):枚举值是常量,不能再程序中用赋值语句再对他赋值
(2):枚举元素本身系统定义了一个表示序号的数值,从零开始
(3):可以改变枚举值的默认值:如
enum week //枚举类型
{
mon=3,tue,wed,thu,fri=4,sat,sun
};
//mon=3 tue=4,以此类推,
//注意在定义枚举类型的时候枚举元素可以用等号给他赋值,用来代表元素从几开始编号