[编程] C语言枚举类型(Enum)

C语言枚举类型(Enum):
定义形式为:enum typeName{ valueName1, valueName2, valueName3, ...... };
enum 类型名{名字1,名字2} 枚举变量,枚举值默认从 0 开始,往后逐个加 1(递增)

枚举和宏其实非常类似:宏在预处理阶段将名字替换成对应的值,枚举在编译阶段将名字替换成对应的值。我们可以将枚举理解为编译阶段的宏。

例子:

#include <stdio.h>
int main(){
        enum week {Mon=1,Tues,Wed,Thurs,Fri,Sat,Sun} day;
        scanf("%d",&day);
        switch(day){
                case Mon:
                        printf("星期一
");
                        break;
                case Tues:
                        puts("星期二");
                        break;
                case Wed:
                        puts("星期三");
                        break;
                case Thurs:
                        puts("星期四");
                        break;
                case Fri:
                        puts("星期五");
                        break;
                case Sat:
                        puts("星期六");
                        break;
                case Sun:
                        puts("星期七");
                        break;
                default :

                        puts("Error");


        }    

}
原文地址:https://www.cnblogs.com/taoshihan/p/7920683.html