收藏官网首页
查看: 12339|回复: 2

谈谈C语言枚举类型

65

主题

123

帖子

787

积分

高级会员

Rank: 4

积分
787
跳转到指定楼层
楼主
发表于 2016-9-1 11:01:47 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
免费使用STM32、APP自动代码生成工具
一,基本概念
(1) 枚举型是一个集合,集合中的元素(枚举成员)是一些命名的整型常量,元素之间用逗号,隔开。
(2) 第一个枚举成员的默认值为整型的0,后续枚举成员的值在前一个成员上加1。
(3) 可以人为设定枚举成员的值,从而自定义某个范围内的整数。
(4) 枚举型是预处理指令#define的替代。
(5) 类型定义以分号;结束。

二、枚举和宏的区别
1、枚举可以自增1,这样不用每一个值都定义,而宏必须每个值都定义。而且枚举是一个集合,代表一类值,像你代码中的颜色归为一类,方便使用,而宏不能形成集合。
2、sizeof是4,枚举变量代表一个整数(如ColorVal = RED),而整数是4个字节。

三、枚举取值范围
枚举类型的尺寸是以能够容纳最大枚举子的值的整数的尺寸。枚举类型中的枚举子的值必须要能够用一个int类型表述”,也就是说,枚举类型的尺寸不能够超过int类型的尺寸,但是是不是必须和int类型具有相同的尺寸呢?只要能够容纳最大的枚举子的值的整数就可以了,那么就是说可以是char、short和int。

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

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

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