本文举例说明C语言中enum枚举关键字的用法。

用来同时定义多个常量

利用enum定义月份的例子如下。

#includeenumweek{Mon=1,Tue,Wed,Thu,Fri,Sat,Sun};int main(){ printf("%d",Tue); return 0;}

这样定义Mon的值为1之后,Tue的值就被默认定义为2,Wed的值为3,依此类推。如果没写Mon=1的话,Mon的默认值就为0。例如:

enumcolor{red,blue,green,yellow};//red的值默认为0

从中间开始赋值的情况,见如下例子:

enum color {red,blue,green=5,yellow}; //red、bule、green、yellow的值依次为0、1、5、6

用来限定变量的取值范围

有时为了保证程序的健壮性而使用enum。

#includeenumMonth{Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec};int main(){ enum Month a = Feb; printf("%d",a); return 0;}

比如上面例子,枚举类型a的取值被限定在那12个变量中。

enum类型的定义方法

在定义enum的同时声明变量:

enum Month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec} a,b;//这样就声明了两个枚举类型a和b

定义完enum之后再声明变量:

enum Month {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec};enum Month a = Feb;

定义匿名的枚举变量:

enum {Jan=1,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,dec} a;//这样就只能使用a这一个枚举类型的变量,不能再定义其他枚举类型

编辑:jq

c语言枚举常量,浅述C语言中枚举enum的用法相关推荐

  1. 后端语言除了java_浅谈后端语言优缺点

    浅谈后端语言优缺点 兄弟连教育在前不久,回答了一个关于后端语言选型的问题,那么后端语言都有哪些,存在什么样的优缺点?因此兄弟连与大家分享一下心得. 语言优缺点 C/C++ C 语言虽然是非常贴近操作系 ...

  2. 合法的c语言整形 常量,0011在c语言是不是合法的整形常量?

    2018-07-23 正确的C语言常量是什么? C语言的常量有整数常量,实型常量,字符常量,符号常量等.1.整数常量 整数常量是指直接实用的整形常数,又称整形常数或者整数,例如,1,-9等.整数常量可 ...

  3. c语言的教学方法,浅论C语言教学方法

    摘要:本文根据C语言的教学重点和目的,探讨如何提高C语言课程的教学质量,使学生更好的掌握C语言的基本语法和程序设计算法,培养和提高学生的编程能力. 关键词:C语言:教学方法:多媒体教学 中图分类号:G ...

  4. c语言const常量用法,C++ const常量在多文件编程中的3种用法

    <C++多文件编程是什么>一节提到,多文件编程中代码的划分原则是:将变量.函数或者类的声明部分存放在 .h 文件,对应的实现部分放在 .cpp 文件中.值得一提得是,此规律适用于大部分场景 ...

  5. 关于c语言的教学方法,浅谈C语言实例教学方法

    摘要:分析C语言程序设计课程的特点:探讨如何在C语言程序设计实验教学中采用科学的实验教学手段,培养学生的学习兴趣,提高学生用C语言解决实际问题的综合能力:对C语言程序设计实验教学提出一些可行的探索方法 ...

  6. c语言 case常量表达式,在switch语句中,每一个case的常量表达式的值必须互不相同。()...

    值必不属特性真正质量的是以下于手机的. <安八十条规全生>第定产法,句中构成的犯罪,2万)万投资下的对个人经人处罚款营的元以元以上(,刑事追究责任够刑罚的依法尚不事处. 密集安部他特型的国 ...

  7. c语言浮点型常量7.0f,C语言学习 - 浮点型数据类型

    在 C语言中,浮点型数据类型可分为:float(单精度).double(双精度).long double(长双精度). 浮点型数据包括浮点型常量和浮点型变量 浮点型常量 I. 小数形式 由数字和小数点 ...

  8. bim技术需要的计算机语言是,浅述BIM技术中的对象

    也许你会经常听到别人说:有了BIM后,计算机会自动识别出座椅,零件,构件,材料等等,这是根据BIM的什么理论呢? 1. BIM技术中的对象 BIM的对象是建筑构件数据与操作的封装技术,在使用中BIM软 ...

  9. c语言的erase函数,[转] C++ STL中map.erase(it++)用法原理解析

    总结一下map::erase的正确用法. 首先看一下在循环中使用vector::erase时我习惯的用法: for(vector::iterator it = vecInt.begin(); it ! ...

最新文章

  1. 实现后台检控并关闭进程的批处理
  2. Windows Azure 新上线网络相关服务
  3. S5PV210开发 -- 驱动开发相关硬件简介
  4. iOS wkwebview https 加载不受信用的站点
  5. 洛谷 题解 P2010 【回文日期】
  6. rdlc报表 矩形高固定_固定资产条码管理系统特点分析
  7. 发些c/c++/vc/驱动/网络安全的好书和资料
  8. 匹配滤波器的仿真——线性调频信号
  9. C语言学习-翁凯(第十三章笔记)
  10. 【科学数据库】数据的合并与分组聚合||||||||
  11. pycharm 2017.3破解方法
  12. 学习记录,linux使用wget命令实现整站下载
  13. linux 系统命令被后门修改_一次Linux系统被攻击的分析过程
  14. 英文文本关键词抽取——使用NLTK进行关键词抽取
  15. 归一化谱聚类NCUT(matlab实现)
  16. 信号完整性分析学习--17--反射
  17. Mysql 常用函数总结(加密解密函数)
  18. 基于SpringBoot+Redis的JAVA+SQL电子通讯录系统
  19. windows 下java调用winrar压缩文件为rar 格式
  20. 货物出库管理信息系统

热门文章

  1. Python学习教程:Python3内置模块之base64编解码方法小结
  2. (2) pandas 文件读写 (csv)
  3. UVA 11235 - Frequent values
  4. 《JAVA 语言程序设计基础篇》chapter 5 方法
  5. 2010中小网站运营报告:社区论坛网站后来居上
  6. sql日期处理(出自邹建的book)
  7. spring-aspectj的几个aop注解
  8. H3C进入目录---用户视图
  9. esper(4-2)-Category Context
  10. 基类Object的子类有哪些以及字符串和数组的方法