如果一个变量你需要几种可能存在的值,那么就可以被定义成为枚举类型,通常和switch case一起使用。
语法:enum gvod_type_app_e {
GVOD_TYPE_APP_GVOD = 0x00,
GVOD_TYPE_APP_GIPTV = 0x01,
GVOD_TYPE_APP_ALL = 0x02,
GVOD_TYPE_APP_GTV = 0X03,
GVOD_TYPE_APP_GMYTUBE = 0X04
};
在C编译中,对枚举元素按照常量处理,故称枚举常量。它们不是变量,不能对它们赋值。
枚举元素作为常量,它们是有值的,C语言编译按定义时的顺序使它们的值为0,1,2,。。。。
也可以改变枚举元素的值,在定义时由程序员指定,如:
enum weekday{sun = 7,mon = 1,tue ,wed,thu,fri,sat}workday,week_end;
定义sun = 7,mon = 1,以后顺序加1,sat为6.
一个整数不能直接赋给一个枚举变量。
应先进行强制类型转换才能赋值。如:workday = (enum weekday)2;
枚举的作用相当与#define 多个常量
枚举数据(枚举常量)是一些特定的标识符,标识符代表什么含义,完全由程序员决定。数据枚举的顺序规定了枚举数据的序号,从0开始,依次递增。