C语言——枚举类型

C语言——枚举类型

一,什么是枚举类型简单来说,枚举类型就是可以让我们给整数值分配有意义的名字,从而使得代码更易读、易维护

二,枚举类型的定义和变量的声明1,如何定义和声明枚举类型的定义和变量的声明方式也与结构体和联合体相似

(一)枚举类型的定义👇🏻

代码语言:javascript代码运行次数:0运行复制enum 枚举名

{

成员项表列

};(二)枚举变量的声明👇🏻

代码语言:javascript代码运行次数:0运行复制enum 枚举名 变量名举例:我们定义一个代表颜色的枚举类型,然后创建一个枚举变量a 👇🏻

代码语言:javascript代码运行次数:0运行复制enum color

{

red=1,

yellow=2,

blue=3

};

int main()

{

enum color a;

return 0;

}这个 {} 里面的变量red yellow blue都有其对应的特定的,不变的整数,所以这些变量也被叫做枚举常量。

当我们引用这些变量的时候,就会输出他们所代表的值,如👇🏻

代码语言:javascript代码运行次数:0运行复制#include

enum color

{

red=1,

yellow=2,

blue=3

};

int main()

{

printf("%d\n", red);

printf("%d\n", yellow);

printf("%d\n", blue);

return 0;

} 输出结果:

2,关于枚举类型中成员的赋值如果我们在创建枚举变量时,为未给成员进行初始化赋值,则C语言会自动赋值

遵循:默认从0开始,依次增1

如果只有前几个值,那么后面未被赋值的成员也会被自动赋值,遵循依次增1

例子一(不赋值)👇🏻

例子二(讲将第一个成员赋值为3,后面的不赋值)👇🏻

注意:一旦枚举类型的成员被赋值后,则变成枚举常量,不能再被修改!

3,命名注意事项同一个程序中不能定义同名的枚举类型;不同的枚举类型中,也不能存在同名的枚举成员。

以下是错误示范:

(一)定义了同名的枚举类型👇🏻

代码语言:javascript代码运行次数:0运行复制enum color

{

red,

yellow,

blue

};

enum color

{

green,

black,

white

};(二)存在同名的枚举成员👇🏻

代码语言:javascript代码运行次数:0运行复制enum color1

{

red,

yellow,

blue

};

enum color2

{

red,

black,

white

};三,对变量进行赋值1,使用成员赋值⭐C语言中的枚举变量通常只能被赋值为枚举类型中定义的成员。

例如,我们给下面的枚举变量a b c赋值👇🏻

【只能使用成员red yellow blue】

代码语言:javascript代码运行次数:0运行复制#include

enum color

{

red = 1,

yellow = 2,

blue = 3

};

int main()

{

enum color a, b, c;

a = red;

b = yellow;

c = blue;

return 0;

}2,强制类型转化,再赋值如果我们非要给枚举类型的变量赋整数值,则对枚举型的变量赋整数值时,需要进行类型转换

代码语言:javascript代码运行次数:0运行复制#include

enum color

{

red = 1,

yellow = 2,

blue = 3

};

int main()

{

enum color c;

c = (enum color)10; //强制类型转换

printf("%d\n", c);

return 0;

} 输出结果:

💎 相关推荐

2018俄罗斯世界杯法国队23人大名单一览表
英国365bet日博

2018俄罗斯世界杯法国队23人大名单一览表

📅 07-01 👁️ 1989
华为手机照片在哪个文件夹
365app安卓客户端下载

华为手机照片在哪个文件夹

📅 06-27 👁️ 2874
每周维护
英国365bet日博

每周维护

📅 08-28 👁️ 457