在C语言中,enum
(枚举)是一种用户自定义的数据类型,它允许程序员为一组整数值赋予有意义的名字,从而提高代码的可读性和可维护性,枚举类型的主要作用是将一组相关的整数值表示为一个变量,这样可以使代码更加简洁、易于理解。
枚举类型的定义和使用如下:
1、定义枚举类型
要定义一个枚举类型,需要使用关键字enum
,后面跟着枚举类型的名称和一组用大括号括起来的枚举常量,定义一个表示星期的枚举类型:
enum Weekday { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY };
这里,Weekday
是枚举类型的名称,MONDAY
到SUNDAY
是枚举常量,注意,枚举常量的命名规则与变量相同,但通常使用大写字母表示。
2、声明枚举变量
声明枚举变量的方法与声明其他基本数据类型的变量相同,声明一个Weekday
类型的变量:
enum Weekday today;
3、赋值给枚举变量
将整数值赋给枚举变量时,可以直接使用枚举常量的名称,将today
变量的值设置为MONDAY
:
today = MONDAY;
4、使用枚举变量
可以使用枚举变量进行比较、算术运算等操作,判断today
变量是否为工作日:
if (today >= MONDAY && today <= FRIDAY) { printf("Today is a workday. "); } else { printf("Today is a weekend or holiday. "); }
5、遍历枚举类型
可以使用switch
语句遍历枚举类型,打印一周内的每一天:
switch (today) { case MONDAY: printf("Monday "); break; case TUESDAY: printf("Tuesday "); break; case WEDNESDAY: printf("Wednesday "); break; case THURSDAY: printf("Thursday "); break; case FRIDAY: printf("Friday "); break; case SATURDAY: printf("Saturday "); break; case SUNDAY: printf("Sunday "); break; default: printf("Invalid day "); }
6、枚举类型的优缺点
优点:提高代码的可读性和可维护性;使代码更加简洁、易于理解。
缺点:枚举类型的大小固定,不能动态分配内存;枚举类型不能直接用于数组、结构体等复合数据类型。
原创文章,作者:酷盾叔,如若转载,请注明出处:https://www.kdun.com/ask/156963.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复