ENUM的定义说明 (enum的定义)

本文目录导航:

ENUM的定义说明

1. 枚举类型定义的普通方式为:enum 枚举名{ 枚举值表 };在枚举值表中应罗列出一切可用值。

这些值也称为枚举元素。

例如:该枚举名为weekday,枚举值共有7个,即一周中的七天。

凡被说明为weekday类型变量的取值只能是七天中的某一天。

2. 枚举变量的说明似乎结构体(struct)和共用体(union)一样,枚举变量也可用不同的方式说明,即先定义后说明,同时定义说明或间接说明。

设有变量a,b,c被说明为上述的weekday,可驳回下述任一种方式:enumweekday{sun,mon,tue,wed,thu,fri,sat};enumweekdaya,b,c;//或许为:enumweekday{sun,mon,tue,wed,thu,fri,sat}a,b,c;//或许为:enum{sun,mon,tue,wed,thu,fri,sat}a,b,c;

ENUM的定义说明 (enum的定义)

枚举类型的用法?

枚举类型的用法重要在于定义一组命名的整数常量,用于提高代码的可读性和保养性。

具体解释:

1. 定义枚举类型

在编程中,枚举类型是一种数据类型,它准许你为一组整数值调配无心义的称号。

经过定义枚举,你可以使代码更易读、易保养,并缩小硬编码的数值的经常使用。

例如,在C++中,你可以定义一个示意星期几的枚举类型:

enum Days {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};

这里,Sunday、Monday等不是变量,而是常量,它们的值自动从0开局,依次递增。

2. 经常使用枚举类型

一旦定义了枚举类型,你就可以在程序中经常使用它来申明变量。

这些变量可以赋值为你在枚举类型中定义的常量。

例如:

Days workDay = Monday;

这里,workDay是一个Days类型的变量,其值为Monday。

3. 枚举类型的长处

经常使用枚举类型的重要长处是提高代码的可读性和可保养性。

经过给整数值赋予无心义的称号,其余浏览你代码的人可以更容易地理解这些值的含意。

此外,假设以后须要更改这些值的示意,你只要要更改枚举定义中的顺序,而不须要在整个代码中查找和交流这些值。

4. 留意事项

只管枚举类型提供了许多便利,但在经常使用时也须要留意一些疑问。

例如,枚举值在底层实践上是整数,所以它们可以启动数学运算。

在某些状况下,这或许造成未预期的结果。

此外,由于枚举值实质上是整数,它们在传递给某些函数时或许会引发疑问,因此在经常使用时须要审慎。

c言语中enum类型的用法!

在实践疑问中,有些变量的取值被限定在一个有限的范畴内。

例如,一个星期内只要七天,一年只要十二个月,一个班每周有六门课程等等。

若把这些量说明为整型,字符型或其它类型显然是不得当的。

为此,C言语提供了一种称为“枚举”的类型。

在“枚举”类型的定义中罗列出一切或许的取值,被说明为该“枚举”类型的变量取值不能超越定义的范畴。

枚举类型是一种基本数据类型,而不是一种结构类型,由于它不能再合成为任何基本类型。

枚举类型的定义和枚举变量的说明如下:枚举的定义:枚举类型定义的普通方式为:enum 枚举名{ 枚举值表 }在枚举值表中应罗列出一切可用值。

这些值也称为枚举元素。

例如,一个名为weekday的枚举,枚举值共有7个,即一周中的七天。

凡被说明为weekday类型变量的取值只能是七天中的某一天。

枚举变量的说明:枚举变量也可用不同的方式说明,即先定义后说明,同时定义说明或间接说明。

设有变量a,b,c被说明为上述的weekday,可以驳回下述任一种方式:1. enum weekday{ sun,mou,tue,wed,thu,fri,sat }2. enum weekday a,b,c;3. enum { sun,mou,tue,wed,thu,fri,sat }a,b,c;枚举类型变量的赋值和经常使用:1. 枚举值是常量,不是变量。

不能在程序中用赋值语句再对它赋值。

例如对枚举weekday的元素再作以下赋值:sun=5; mon=2; sun=mon;都是失误的。

2. 枚举元素自身由系统定义了一个示意序号的数值,从0开局顺序定义为0,1,2…。

如在weekday中,sun值为0,mon值为1,…,sat值为6。

【例】main(){enum weekday{ sun,mon,tue,wed,thu,fri,sat } a,b,c;a=sun;b=mon;c=tue;printf(%d,%d,%d,a,b,c);}说明:只能把枚举值赋予枚举变量,不能把元素的数值间接赋予枚举变量。

如:a=sum; b=mon;是正确的。

而:a=0; b=1;是失误的。

如必定要把数值赋予枚举变量,则必定用强迫类型转换。

如:a=(enum weekday)2; 其意义是将顺序号为2的枚举元素赋予枚举变量a,相当于:a=tue; 还应该说明的是枚举元素不是字符常量也不是字符串常量,经常使用时不要加单、双引号。

【例】main(){enum body{ a,b,c,d } month[31],j;int i;j=a;for(i=1;i<=30;i++){month[i]=j;j++;if(j>d) j=a;}for(i=1;i<=30;i++){switch(month[i]){casea:printf( %2d %c\t,i,a);break;caseb:printf( %2d %c\t,i,b);break;casec:printf( %2d %c\t,i,c);break;cased:printf( %2d %c\t,i,d);break;default:break;}}

你可能想看:
« 上一篇
下一篇 »

相关推荐

FreeBasic:强大免费开源的64位basic编译器及应用优势

2025年05月10日

82阅读

脊柱侧弯矫正方法大盘点:运动康复、支具矫正等多种方式

2025年05月09日

88阅读

如何在winForm标题栏去掉标题文字且任务栏图标正常显示

2025年05月09日

86阅读

十一黄金周促销广告词大全,国庆购物狂欢等你来

2025年05月09日

78阅读

关闭快速编辑模式及插入模式,设置控制台指定文字颜色举例

2025年05月09日

63阅读

黄金搭档低糖高钙饮品包装及成分功效全解析,适合人群要知晓

2025年05月09日

91阅读