鱼C论坛

 找回密码
 立即注册
查看: 3939|回复: 7

[知识点备忘] S1E52:枚举类型

[复制链接]
发表于 2017-6-27 04:00:37 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
待更新

评分

参与人数 1鱼币 +4 收起 理由
1436466587 + 4 你知道这6年大家是如何过来的吗!!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2017-8-4 08:22:51 | 显示全部楼层
我复习到这里了,但是还得等您更新。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

发表于 2018-4-26 23:11:44 | 显示全部楼层
小甲鱼加油啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-7-30 12:27:27 | 显示全部楼层
期待更新
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2019-8-17 14:21:30 | 显示全部楼层

大自然搬运工

1、枚举类型定义或使用情景            如果一个变量只有几种可能的值,那么就可以将其定义为枚举(enumeration)类型。
2、声明枚举类型       enum 枚举类型名称 {枚举值名称, 枚举值名称…};         如:
  1. enum Week {sun, mon, tue, wed, thu, fri, sat};
复制代码

3、定义枚举类型变量        enum 枚举类型名称 枚举变量1,枚举变量2;           如:
  1. enum Week today;
复制代码

4、枚举类型里的枚举值默认为从开始初始化,如
  1. enum Week {sun, mon, tue, wed, thu, fri, sat};    //声明枚举类型Week,默认枚举值初始化从领开始,如枚举值名称sun~sat从0~6进行逐一赋值
复制代码

若是对其之一进行赋值,则赋值的枚举值之前的都从零开始赋值;其后面则从赋值的数值开始逐次加一赋值,如
  1. enum Color {red, green, blue = 10, yellow};      //red=0,green=1,blue=10,yellow=11;
复制代码

例子:
  1. #include <stdio.h>
  2. #include <time.h>
  3. int main(void)
  4. {
  5.         enum Week {sun, mon, tue, wed, thu, fri, sat};    //声明枚举类型Week,默认枚举值初始化从领开始,如枚举值名称sun~sat从0~6进行逐一赋值
  6.         enum Week today;         //定义枚举类型变量today
  7.         struct tm *p;
  8.         time_t t;
  9.        
  10.         time(&t);
  11.         p = localtime(&t);

  12.         today = p->tm_wday;

  13.         switch(today)
  14.         {
  15.                 case mon:
  16.                 case tue:
  17.                 case wed:
  18.                 case thu:
  19.                 case fri:
  20.                         printf("干活!T_T\n");
  21.                         break;
  22.                 case sat:
  23.                 case sun:
  24.                         printf("放假!^_^\n");
  25.                         break;
  26.                 default:
  27.                         printf("Error!\n");
  28.         }

  29.         return 0;
  30. }
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 5 反对 0

使用道具 举报

发表于 2021-8-30 20:04:21 | 显示全部楼层
today = p->tm_wday;这个编译不通过。应该是today = (enum Week)p->tm_wday;
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-2-8 14:52:40 | 显示全部楼层
感觉枚举变量并没有特殊的作用啊
各种意义上enum Week today == int today
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2024-3-2 21:22:46 | 显示全部楼层
求更新
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 20:29

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表