黑马程序员技术交流社区
标题:
日课9 c语言之枚举类型
[打印本页]
作者:
黑白世界
时间:
2015-9-24 15:49
标题:
日课9 c语言之枚举类型
枚举类型的作用是可以表达一个枚举类型变量的含义,比如定义一个性别的枚举类型,我们可以只让她表示“男”,“女”,“未知”
但是,需要注意的是,C语言是不严格控制枚举类型的,如下列代码,即使我们定义了枚举类型names的取值只有四种可能,我们依然可以为names定义的枚举类型变量赋其他值。同样可以通过编译并执行。
//定义一个枚举类型 names
enum names {
jack,
rose,
tom,
lusi
};
//定义枚举变量 stu1,stu2
enum names stu1 = jack;
enum names stu2 = tom;
//打印枚举类型和他们的内存大小
printf("stu1=%d,stu2=%d\n",stu1,stu2); //结果:stu1 = 0 , stu2 = 2
printf("sizeof(stu1)=%d,sizeof(stu2)=%d\n",sizeof(stu1),sizeof(stu2)); //结果都是4
复制代码
另外,以上面代码为例,Jack存的值是0,rose存的值是1,以此类推,lusi存的值是4.
我们可以通过其他方法改变这些值,但是并不建议这么做:
enum namestest {
jack = 3,
rose,
tom,
lusi
};
enum namestest stu3 = jack;
enum namestest stu4 = tom;
printf("stu1=%d,stu2=%d\n",stu3,stu4); //输出结果:3 , 5
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2