为什么使用枚举?
我们可以使用#define定义常量,为什么非要使用枚举?
枚举的优点:
(1)增加代码的可读性和可维护性
(2)和#define定义的标识符相比,枚举有类型检查,更加严谨
(3)便于调试,预处理阶段会删除#define定义的符号
(4)使用方便,一次可以定义多个常量
(5)枚举常量是遵循作用域规则的。枚举声明在函数内,只能在函数内使用。
增加代码的可读性:
例如:
代码:
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
enum option
{
EXIT,//退出程序
ADD,//加法
SUB,//减法
MUL,//乘法
DIV//除法
};
int main()
{
int x = 0;
int y = 0;
scanf("%d %d", &x, &y);
printf("**** 0 退出程序 1 加法\n");
printf("**** 2 减法 3 乘法\n");
printf("**** 4 除法\n");
int n = 0;
printf("请输入选项:");
scanf("%d", &n);
switch (n)
{
case EXIT:
break;
case ADD:
printf("%d\n", x + y);
break;
case SUB:
printf("%d\n", x - y);
break;
case MUL:
printf("%d\n", x * y);
break;
case DIV:
if (y ==0 )
{
printf("y不能为0");
break;
}
printf("%d\n", x / y);
break;
default:
printf("输入错误");
}
return 0;
}