是一种基本数据类型,而不是一种构造类型,因为它的值不能再进行分解 定义: enum 枚举类型名{枚举值表}; 在枚举值表中应罗列出所有可用的值 举例: //定义一个星期 enum weekday{周一,周二,周三,周四,周五,周六,周日};
//定义iPhone手机颜色 enum iColor{kIcolorWhite,kIcolorBlack,kIcolorTHJ};
//定义人的性别 enum sex{kSexMan,kSexWomen,kSexYao};
枚举类型变量的定义和使用 定义: 1> 先定义枚举类型,再定义枚举变量 enum iColor iPhoneColor; iPhoneColor的取值是有要求的,只能从iColor中选一个 enum 枚举类型名 枚举变量名列表;
定义枚举类型的同时定义变量 enum Sex{kSexMan,kSexWomen,kSexYao} isex;
2>枚举变量的初始化 iPhoneColor = kIcolorBlack; sex = kSexYao;
3>枚举变量的使用 printf(“%d\n”,iPhoneColor);//结果:1
4>枚举变量的值 枚举类型定义完成以后,系统会自动定义0,1,2,3....的初值,每一个元素比前面的加1 自己可以手动赋值, 例:enum Sex{kSexMan,kSexWomen,kSexYao} ; 若kSexMan=3,则kSexWomen=4,kSexYao=5
5>应用 struct Person{
char *name; enum Sex isex;//性别是固定的,不能随意写 }
6>不按套路出牌 iPhoneColor = 3.4; printf(“%d\n”,iPhoneColor);
|