枚举是 C 语言中的一种基本数据类型,用于定义一组具有离散值的常量,它可以让数据更简洁,更易读。枚举类型通常用于程序中的一组相关的常量取名字,以便于程序的可读性和维护性。
枚举类型的定义使用关键字 enum
,后跟枚举类型名和一个由花括号包围的枚举成员列表。第一个枚举成员默认值为整型的 0,后续枚举成员的值在前一个成员上加 1。
枚举语法定义格式:
enum 枚举类型名 { 枚举成员1, 枚举成员2, ... 枚举成员N };
enum DAY { MON=1, TUE, WED, THU, FRI, SAT, SUN };
在定义枚举类型时,改变枚举元素的值,例如:
enum SEASON
{
spring,
summer=3,
autumn,
winter
};
未指定值的枚举元素,值为前一元素加 1。spring值为 0,summer值为3,autumn值为 4,winter的值为 5。
枚举使用示例:
#include <stdio.h>
enum days {
MONDAY,
TUESDAY,
WEDNESDAY,
THURSDAY,
FRIDAY,
SATURDAY,
SUNDAY
};
int main() {
enum days today;
today = MONDAY;
printf("Today is day %d of the week.\n", today);
// 显式指定枚举成员值
enum colors {RED = 1, GREEN, BLUE};
enum colors myColor = GREEN;
printf("My favorite color is %d.\n", myColor);
return 0;
}