Enum是用户定义的类型,枚举类型具有固定的命名常量列表。以下代码为颜色创建枚举类型:REDGREENBLUE

enum color { RED, GREEN, BLUE };

颜色类型变量现在可以保存其中一个常量值。

#include <stdio.h>

enum color { RED, GREEN, BLUE };
int main()
{
    enum color c = RED;

    printf("%d",c);

    return 0;
}

执行结果为:

0

枚举变量可以与枚举类型本身的定义一起声明。

enum color { RED, GREEN, BLUE } c, d;

以下代码显示了如何在switch语句中使用枚举类型。

#include <stdio.h>

enum color { RED, GREEN, BLUE } c, d;
int main()
{
    enum color c = RED;

    switch(c) {
      case RED:   printf("red:%d",c);break;
      case GREEN: printf("%d",c);break;
      case BLUE:  printf("%d",c);break;
    }
    return 0;
}