C零散知识点汇总之enum关键字
  qrJHiMhufrJ3 2023年11月13日 18 0


enum enum_type_name {
ENUM_CONST_1,
ENUM_CONST_2,
ENUM_CONST_3,
...
ENUM_CONST_n
} enum_variable_name;

enum_type_name是自定义的一种数据类型名,而enum_variable_name是enum_type_name类型的一个变量,也就是常说的枚举常量。实际上enum_type_name类型是对一个变量取值范围的限定,而花括号内是它的取值范围。

枚举与#define宏的区别

1、#define宏常量是在预编译极端进行简单替换,没去常量则是在编译的时候确定其值。

2、一般在调试器里,可以调试枚举常量,但是不能调试宏常量。

3、枚举可以一次定义大量相关的常量,而#define宏一次只能定义一个。

枚举能做到事,#define宏能不能都做到?如果能,那为什么还需要枚举?

1、枚举可以自增1,这样不用每一个值都定义,而宏必须每个值都定义。

2、枚举是一个集合,代表一类值,像你代码中的颜色归为一类,方便使用,而宏不能形成集合。

sizeof(enum_type_name)的值是多少?

sizeof(enum_type_name)是4,因为enum_type_name是一个枚举变量,而枚举变量代表一个整数(如enum_type_name = ENUM_CONST_1),而整数是4个字节。

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月13日 0

暂无评论

推荐阅读
  sLjOnCldvVSM   2023年11月12日   37   0   0 #include#definec++
  UYSNSBVoGd8R   2023年12月08日   22   0   0 引脚#include#define
qrJHiMhufrJ3