目录
枚举enum就是英文enumerate的缩写,也就是列举、排列说明的意思。枚举类型是C语言中的一种特殊类型,枚举类型可以让我们的程序使用一些固定长度和固定数值的变量值范围。定义枚举类型:enum 枚举类型 {枚举值列表};
枚举类型的定义方法
C语言中的枚举类型是一种特殊的数据类型,它用于存储一组有限的常量值,通常以一个单独的关键字声明,每个常量值占用一行。下面是一个简单的枚举类型的定义和使用方法:
#include <stdio.h>
// 定义枚举类型
enum Weekday {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday,
Saturday,
Sunday
};
在上面的代码中,我们首先定义了一个枚举类型Weekday
,它包含了一组常量值,分别表示星期一到星期日。然后在main
函数中,我们声明了两个枚举常量day1
和day2
,并将它们分别赋值为Monday
和Friday
。最后,我们通过printf
函数输出这两个枚举常量。
//如果在定义枚举类型时指定元素的值,也可以改变枚举元素的值
enum weekday{sun=7,mon=1,tue,wed,thu,fri,sat}day;
//sun 为 7,mon 为 1,以后元素顺次加 1,所以 sat 就是 6 了。
枚举类型的使用
枚举类型定义的变量可以直接使用。
int main() {
// 声明枚举常量
enum Weekday day1 = Monday;
enum Weekday day2 = Friday;
// 输出枚举常量
printf("%d\n", day1);
printf("%d\n", day2);
return 0;
}
枚举类型的作用
除了枚举常量的定义和输出,枚举类型还有其他一些用途,例如用于存储日期、时间、颜色等信息。以下是一个枚举类型存储日期的示例:
#include <stdio.h>
#include <time.h>
// 定义枚举类型
enum Date {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
};
int main() {
// 声明枚举常量
enum Date day1 = MONDAY;
enum Date day2 = SUNDAY;
// 输出枚举常量
printf("%d\n", day1);
printf("%d\n", day2);
return 0;
}
在上面的代码中,我们定义了一个枚举类型Date
,它包含了一组常量值,分别表示星期一到星期日。然后在main
函数中,我们声明了两个枚举常量day1
和day2
,并将它们分别赋值为MONDAY
和SUNDAY
。最后,我们通过printf
函数输出这两个枚举常量。
总之,枚举类型是一种非常有用的数据类型,可以用于存储一组有限的常量值,并且可以用于存储日期、时间、颜色等信息。使用枚举类型需要注意常量值的定义和赋值,以及枚举常量的输出。