黑马程序员技术交流社区

标题: 枚举类型 [打印本页]

作者: Star_FDt78    时间: 2015-12-12 22:18
标题: 枚举类型
是一种基本数据类型,而不是一种构造类型,因为它的值不能再进行分解
定义:
        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);



作者: konglong    时间: 2015-12-13 00:46
不错不错




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2