C枚举实战用法

前言

提起枚举大家感觉很简单的,但是理解不深的我也被嘲笑过,特此来此坐下记录,只有自己写出来的,亲手敲出来的,理解才会更清楚

typedef enum{
	 MONDAY = 0x00,
	 TUESDAY,
	 WEDNESDAY,
	 THURSDAY,
	 FRIDAY,
	 SATURDAY,
	 SUNDAY,
	 DAY_NUM,
}WEEK_e;
WEEK_e day;  // 定义一个枚举变量

刚开始了解枚举体的时候只是明白和结构体类似,使用的时候需要定义枚举变量,然后他的优势是不给初值,默认第一个为0,递增下去。但是实际项目中却不是这样用的,下面就总结下:

1:用typedef来定义枚举体(或者结构体),方便后面定义枚举变量(定义结构体变量)(不用这个形式都快忘记是什么样子了,习惯)。一定要养成良好的习惯啊。
2:枚举变量未初始化会默认从第一个开始0,递增加1.(中途改了继续增加没意思就不说了)
3:枚举相当于常量(不用定义枚举变量,很重要),可以直接使用.
枚举和宏定义非常类似,如果定义一周的变量用#define,虽然可以,当时带来的副作用是宏名太多,代码松散,看起来不舒服,所以采取枚举方式很方便。
4:枚举最后一个变量是枚举的个数,常常和数组一起使用如下:

int week[DAY_NUM] = {MONDAY ,TUESDAY,... ...};  // 只是作为宏定义来使用

5:特别注意,在不同的枚举结构中定义,如果成员的名字一样会编译出错。这点一定要注意

如有其他常用功能欢迎补充。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值