00:01
枚举,我们继续来学习C语言课程的下一个章节叫枚举,那枚举是什么呢?我们仍然是通过一个需求来引出要讲解的枚举,比如说我跟大家举一个例子,比如说一个星,一个星期呢,有七天,对不对?请定义数据表示周一到周呃到到周日这么一个呃这么一个数据,那传统的方法会怎么做呢?因为我们一个星期就是周一到周日,这是一个固定的,所以说最传统的方法,咱们可以这样写,叫办。咱们定一个红,是不是Monday。用1TUESDAY,二周三、周四、周五、周六、周日分别给他定义1234567。那这是传统方法,这个传统方法看起来代码量比较多,而且呢,不好管理,是不是因为你每个一个个去用呢,不方便,所以说这个传统方法呢,看起来简单,其实呢,使用起来并不方便,于是乎在C语言来说呢,C语言的设计者就给我们提供了另外一种数据类型,什么数据类型呢,就是枚举。
01:12
那这个枚举同学们回忆一下,枚举在C语言里面,它是一种构造数据类型,回忆一下。打开我们的这个笔记,我们我们拿到数据类型这个章节,给大家再回顾一下数据类型。是不是在这里我们讲过的变量的数据类型,它有基本数据类型,这个呢,咱们前面已经讲过。这里面是不是有一个数据类型叫枚举啊,这个枚举数据类型是属于构造类型,叫inumeration在这里。那回到我们这边继续来看,也就是说至少大家要知道,枚举它是一种数据类型,而且是一种构造数据类型。那么它的作用是什么呢?来看一下,它可以让数据更加的简洁,更加易读。
02:02
对于只有几个特定限定的数据可以用枚举,比如说前面的周一,我们周一对到周日,哎,这就是这就是固定的嘛,咱们一一个星期就这么七天。说说用枚举,枚举它的英文单词是imunration,简写en nu,那么我们也简称imunration。好枚举呢,它是一组常量的集合。就是它的值是固定的。包含一组有限的特定的数据。枚举的语法格式我们来看一下,它是这样子这样定义的,大家看这里首先有个关键字immeration,简写的就en nu是固定的啊,不能改枚举的名称。就是枚举,你给它取个名字,那么枚举里面有哪些值呢?把它写好,就是枚举的元素。那这样子讲大家可能还是不太清晰,那这样子我们直接给他来一个快速入门。
03:01
那快速入门一下就明白了,我们就以枚举来解决前面的需求为例,比如说。大家看这里。这这段代码就是定义了一个枚举类型叫D,里面包含的枚举元素有七个,中间用逗号逗号隔开,这里我写个注释。这里这个D。就是。就是枚举。枚举类型,注意啊,这是枚举类型。嗯,那么这里面它包含什么呢?包含了包含了七个枚举元素。枚举的元素。元素大家看一下,看一下是什么,能看懂吗。Monday用一表示,Tuesday用二表示,Wednesday用三表示,以此类推。七个元素,那大家看这句话是什么意思呢?这个地方imnumer day下面有个小写的day,这个地方同学们首先要区分,前面这个是数据类型。
04:04
这个是。是枚举。数据类型枚举类型哈,简写。枚举类型,那么这个对呢,就是枚举这个数据类型对应的一个变量,对这个对呢,就是枚举变量。变量,你这样理解就很好很好理解了,比如说同学们看,我们定一个int a。你看这个int。就是数据类型,而A呢,是int的一个变量,就是一个整形变量,这样理解哈,你对照我们前面讲的就可以了,也就是说这是我们的枚举类型。是一个数据类型,D呢是这种数据类型的一个变量。明白了吗?那当然,它既然是变量,我们就可以给它赋值。那给它负值呢,就只能赋这里面的值,不能负其他的值了,就是你这样是给什么呢?给枚举变量。
05:07
对,枚举变量谁呢?对对。父子。那么这个值是哪里呢?值就是。某个某个枚举,枚举元素。你这个地方霉菌元素不是有七个吗?对,那你给他其中一个就行了,然后这边打印出来,如果我们按照整数打印,它就会打印你这个Wednesday对应的。这个数这个编号对吧,你的编号给他写个十,或者说对应的这个整数,你这写的是什么,他这就输出什么,假如有些同学说老师我给的是13呢,那就是十,那就是13。明白。好,所以说我们从这里可以看出呢,每一举元素啊,每个每个每一举每举元素对应对应一个值,对应一个整数,对吧,或者对应一个值吧,对应一个值。
06:06
好,同学们,这个代码怎么去说我们可以。可以运行一下,给大家演示一下这个效果好不好,来给同学们演示一下,那这个呢,是我们的第又一个章节,我新建一个文件夹。叫CHAPTER08。没问题吧,这208好,首先我把这边先注销了。那现在呢,我们又新建一个文件,叫枚举DEMO。Nu OK。好,那这里呢,我们新建。一个文件来进行一个简单测试,代码很简单,没有太多的逻辑在里边,对吧?所见即所得,大家看一下就行了,VO。主函数把代码呢往这一放。单反方,那么如果,呃,当然我这地方应该是贸易的了,这边返回一个零,它就不能接收哈,我先把它去掉吧。
07:00
先把它去掉,那这个地方呢,它会输出三,这个三为什么是三,不是别的,是因为你的这个值就是你负的,这个枚举元素对应的是三,看清楚没有,那同学们我们运行一下。讲细节的时候,我们还会说这个事情。它运行起来,诶,他这边是有错误,那可能是前面有没有注销的,好把这个注销一下。再来吧,同学们再来运行。再来运行好,运行过来过后呢,我们发现的确哈,它输出三,那有些同学老师他是不是一定按这个123的顺序呢,不一定,比如说我给他付一个13。你看我给他负个13,你们同学们看一下这个Wednesday输出的是多少呢?你看它输出的就是13,也就是说你这里给他一个什么值,它就输出对应的。这一个,呃,枚举元素对应的值,OK,好,就是这样,这这样子的好,当然习惯上呢,我们还是按顺序来给给它的一个编号好的。
08:01
好,这就是我们枚举类型的快速入门,大家看能否理解,并不难,对不对?好,截段视频。
我来说两句