理论教育 C语言枚举类型及应用场景

C语言枚举类型及应用场景

时间:2023-11-02 理论教育 版权反馈
【摘要】:枚举类型是C语言的新标准所增加的一种简单类型。枚举类型声明中的每个枚举元素均为常量,叫作枚举常量。可以使用“printf;”输出枚举类型变量值,打印结果为0。如果“wk1=sun;wk2=mon;”,那么根据上面的枚举类型声明,sun的值为0,mon的值为1,则“wk1

C语言枚举类型及应用场景

枚举类型是C语言的新标准所增加的一种简单类型。

声明枚举类型的一般形式如下:

其中,枚举元素为标识符。例如:

该代码声明了枚举类型enum week,定义了enum week的类型变量wk。

除了以上声明枚举类型及定义枚举类型变量的形式外,还有与结构体类型声明及定义变量相似的另两种形式,这里就不详细介绍了。

枚举类型声明中的每个枚举元素均为常量,叫作枚举常量。这些枚举元素组成枚举表。如果在声明时不特别赋值说明,则从第一个枚举元素开始,其值依次为0、1、2、…。如果用等号为某一枚举元素赋一特殊整数值,而其后的枚举元素没有赋值,则后边枚举元素值依次加1。例如,在枚举类型enum week中,若sun=1,则后续的枚举元素依次为2、3、…。若后续的枚举元素另有赋值,则以赋值为准。

枚举类型变量的取值只能是枚举表中的某个枚举常量。例如,枚举类型变量wk的取值为sun,可以写成“wk=sun;”(不能写成“wk=0;”)。(www.daowen.com)

可以使用“printf("%d\n",wk);”输出枚举类型变量值,打印结果为0。

可以对枚举类型变量值进行判断比较,例如定义“enum week wk1,wk2;”之后,可以进行“wk1<wk2”的比较。如果“wk1=sun;wk2=mon;”,那么根据上面的枚举类型声明,sun的值为0,mon的值为1,则“wk1<wk2”为真。

枚举常量具有见名知义的优点,并且枚举类型变量的取值范围限制在枚举表内,一旦取值超过取值范围,可立即给出错误提示。所以枚举类型变量在一些特殊场合下使用方便。

例9.5 从键盘输入一个代表月份值的整数,显示与该整数对应的英文月份名称。

程序代码如下:

运行程序时,若输入“9”,则显示如下:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈