C语言——枚举类型用法
2021-05-11 17:30
标签:can src day stm32 print bre 数字 img 好处 enum 枚举名{ 枚举元 素1,枚举元素2,枚举元素3...}; 增加程序的可读性,我们都知道在计算机中所有信息都是用二进制来表示的,如果你用二进制来表示某件事务是非常不直观的,为了使程序更加直观我们引入枚举。 枚举元素列表中,每个元素只能是整型,如果我们不指定某个元素的大小,默认是从0开始排列,如第2行中的枚举列表中red = 0、yellor = 1......black = 4,从这个代码中我们可以看到红色,黄色不再用数字表示,而是用枚举元素来表示红色、黄色等一些有意义的词,而这个枚举元素的名称可以自己定义,枚举元素本质还是数字。 正如上边代码注释所说,worday可以不要,代码如下 在程序中我们是直接可以用某个枚举中的枚举元素的,在STM32开发库中这种枚举用法非常多,下图就是STM32库中的代码示例,利用这个方法开发库,可以大大增加程序的可读性。 C语言——枚举类型用法 标签:can src day stm32 print bre 数字 img 好处 原文地址:https://www.cnblogs.com/lixuejian/p/13150745.html1.枚举的定义
2.使用枚举类型的好处
3.枚举的应用
1 /*红色、黄色、绿色、蓝色,黑色*/
2 enum color{red,yellor,green,blue,black};
3 int main()
4 {
5 char user_color;
6 while(1)
7 {
8 printf("\n请输入颜色");
9 scanf("%d",&user_color);
10 switch(user_color)
11 {
12 case red: printf("\n你输入的是红色\n"); break;
13 case yellor: printf("\n你输入的是黄色\n"); break;
14 case green: printf("\n你输入的是绿色\n"); break;
15 case blue: printf("\n你输入的是蓝色\n"); break;
16 case black: printf("\n你输入的是黑色\n"); break;
17 }
18 }
19
20 return 0;
21 }
4.用typedef关键字将枚举类型定义成别名,并利用该别名进行变量声明
1 typedef enum workday //此处的workday可以省略,或者改成其他,不会影响后面
2 {
3 saturday,
4 sunday,
5 monday,
6 tuesday,
7 wednesday,
8 thursday,
9 friday
10 } workday; //此处的workday为枚举型enum workday的别名,类似于int
1 typedef enum
2 {
3 saturday,
4 sunday,
5 monday,
6 tuesday,
7 wednesday,
8 thursday,
9 friday
10 } workday; //此处的workday为枚举型enum workday的别名
11 workday today, tomorrow; //变量today和tomorrow的类型为枚举型workday,也即enum workday
1 typedef enum
2 {
3 LED1 = 0,
4 LED2 = 1,
5 LED3 = 2,
6 LED4 = 3
7 } Led_TypeDef;
8
9 typedef enum
10 {
11 BUTTON_WAKEUP = 0,
12 BUTTON_TAMPER = 1,
13 BUTTON_KEY = 2,
14 BUTTON_RIGHT = 3,
15 BUTTON_LEFT = 4,
16 BUTTON_UP = 5,
17 BUTTON_DOWN = 6,
18 BUTTON_SEL = 7
19 } Button_TypeDef;