2.12 C语言枚举和预处理的#define有什么不同?

只有很小的区别。

C 标准中允许枚举和其它整形类别自由混用而不会出错。

(但是, 假如编译器不允许在未经明确类型转换的情况下混用这些类型,则聪明 地使用枚举可以捕捉到某些程序错误。)

枚举的一些优点: 

自动赋值;

调试器在检验枚举变量时, 可以显示符号值;

它们 服从数据块作用域规则。

(编译器也可以对在枚举变量被任意地和其它类型混用 时, 产生非重要的警告信息, 因为这被认为是坏风格。)

一个缺点是程序员不能控 制这些对非重要的警告;

有些程序员则反感于无法控制枚举变量的大小。

永不止步步 发表于01-13 11:17 浏览65535次
分享到:

已有0条评论

暂时还没有回复哟,快来抢沙发吧

添加一条新评论

只有登录用户才能评论,请先登录注册哦!

话题作者

永不止步步
金币:67410个|学分:308467个
立即注册
畅学电子网,带你进入电子开发学习世界
专业电子工程技术学习交流社区,加入畅学一起充电加油吧!

x

畅学电子网订阅号