C语言enum枚举类型的用法(附带实例)

C语言enum枚举类型的用法(附带实例)

在 C 语言程序中,如果一个变量只有几种可能的取值,可以将这个变量定义为枚举类型。

对于枚举类型的变量,变量所有可能的值都会一一列举出来,变量的值只限于列举出来的这些值。

C语言枚举类型的创建

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

enum 枚举名 {枚举元素列表};

例如:

enum day {mon,tue,wed,thu,fri,sat,sun};

在编程中,有些数据取值是有限的,为了方便,通常会为每个值取个名字,以便在后续代码中使用,下面通过一个实例进行说明。

【实例】一年有十二个月,一年有四季,一个星期有七天。若不用枚举的方式,则需要使用 #define 来为每个整数定义别名,代码如下:

#define mon 1

#define tue 2

#define wed 3

#define thu 4

#define fri 5

#define sat 6

#define sun 7

如果使用枚举的方式,则代码会简洁很多:

enum day {mon = 1,tue,wed,thu,fri,sat,sun};

在 C语言中,每一个枚举元素都代表一个整数,枚举元素默认从整数 0 开始,后续枚举元素的值在前一个枚举元素的值上加 1。这里指定了枚举元素 mon 的值为 1,后续枚举元素的值依次加 1,则枚举元素 sun 的值为 7。

enum season {spring,summer,autumn = 5,winter};

在 season 这个枚举类型中指定枚举元素 autumn 的值为 5,则 spring 的值为 0,summer 的值为 1,winter 的值为 6。

C语言枚举变量的定义和使用

定义枚举变量有以下 3 种方法:

1) 先定义枚举类型,再定义枚举变量。例如:

enum day {mon = 1,tue,wed,thu,fri,sat,sun};

enum day da;

2) 定义枚举类型的同时定义枚举变量。例如:

enum day {mon = 1,tue,wed,thu,fri,sat,sun} da;

3) 省略枚举名称,直接定义枚举变量。例如:

enum {mon = 1,tue,wed,thu,fri,sat,sun} da;

下面通过一个实例熟悉枚举的具体用法。

#include

int main()

{

enum color { red = 1,green,blue };

enum color favorite_color;

printf("请输入你喜欢的颜色: (1. red,2. green,3. blue): ");

scanf("%u",&favorite_color);

switch (favorite_color)

{

case red:

printf("你喜欢的颜色是红色");

break;

case green:

printf("你喜欢的颜色是绿色");

break;

case blue:

printf("你喜欢的颜色是蓝色");

break;

default:

printf("你没有选择你喜欢的颜色");

}

return 0;

}

程序中定义一个颜色的枚举数据类型,然后声明一个 favorite_color 变量,并输入这个变量的值,最后根据这个变量的值输出具体的颜色。编译运行程序,结果如下:

请输入你喜欢的颜色: (1. red, 2. green, 3. blue): 1

你喜欢的颜色是红色

相关推荐

365日博官网 什么是“大盘”

什么是“大盘”

📅 08-04 👁️ 8625
365bet网球 NVIDIA GeForce 930M -评测与技术规格

NVIDIA GeForce 930M -评测与技术规格

📅 08-13 👁️ 8635