- 1、本文档共68页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]C面向对象程序第8章
C++ 面对对象程序设计 授课老师: 第8章 复杂数据类型 本章要点 8.1 枚举类型的定义及应用 8.2 结构体的定义及应用 8.3 共用体的定义及应用 8.4 链表 8.5 类型定义 本章要点 枚举类型的定义及应用 结构体的定义及应用 共用体的定义及应用 用typedef定义类型名 8.1枚举类型 在程序设计中,有时会用到由若干个有限数据元素组成的集合,如一周内的星期一到星期日7个数据元素组成的集合,程序中某个变量取值仅限于集合中的元素。此时,可将这些数据集合定义为枚举类型。因此,枚举类型是某类数据可能取值的集合,如一周内星期可能取值的集合为: {Sun,Mon,Tue,Wed,Thu,Fri,Sat} 该集合可定义为描述星期的枚举类型,该枚举类型共有7个元素,因而用枚举类型定义的枚举变量只能取集合中的某一元素值。由于枚举类型是导出数据类型,因此,必须先定义枚举类型,然后再用枚举类型定义枚举型变量。 8.1.1枚举类型的定义 枚举类型的一般定义格式为: enum 枚举类型名 {枚举元素表}; 其中:关键字enum表示定义的是枚举类型,枚举类型名由标识符组成。 枚举元素为常量时定义形式如下: enum 枚举类型名{枚举常量1,枚举常量2,…,枚举常量n}; 例如: enum seasons{spring,summer,autumn,winter};//定义枚举类型enum seasons 又如: enum colors{red,blue,green,yellow,white,black};//定义枚举类型enum colors 说明: (1)enum是定义枚举类型的关键字,枚举类型名应符合标识符定义的规则,enum和枚举类型名构成枚举类型的类型名。 (2)花括号{}中的值是该枚举类型所有可能的枚举常量列表,定义中枚举常量不能同名。在系统默认的情况下,枚举常量值顺序为0,l,2,…,即第一个枚举常量的值为0,其后枚举常量的值是前一个枚举常量的值加1。例如示例中,spring,summer,autumn,winter的值分别为0,1,2,3,而red,blue,green,yellow,white,black的值分别为0,1,2,3,4,5。 (3)也可以在定义时,由用户自行设定每一个枚举常量的值。 例如: enum seasons{spring=4,summer=1,autumn,winter}; spring的值为4,summer的值为1,其后枚举常量的值为前一个枚举常量的值加1,顺序为2,3。 (4)不能给已经定义过的枚举常量赋值。例如: spring=1; 是错误的,因为枚举常量是常量而不是变量。 8.1.2枚举类型变量的定义 定义枚举类型变量有三种方法;即:先定义类型后定义变量,定义类型的同时定义变量,直接定义变量,现介绍如下: 1.先定义类型后定义变量 格式: enum 枚举类型名 变量1〔,变量2,…,变量n〕 2.定义类型的同时定义变量 格式: enum 枚举类型名 {枚举元素表} 变量1〔,变量2,…,变量n〕; 3.直接定义枚举变量 格式: enum {枚举元素表}变量1〔,变量2,…,变量n〕; 8.1.3枚举类型变量的引用 (1)枚举变量的取值范围只能是其枚举类型定义时所枚举的各个枚举常量,所以枚举常量可赋值给枚举变量如“c1=white;c2[3]=green;”等。 (2)枚举类型变量不能直接被赋予一个整数数值。如“c1=4;”是错误的,因为c1是枚举类型变量,4是整型常量,两者的类型不同。经过强制类型转换后,是可以赋值的,如“c1=(enum colors)4;”。 (3)同类型的枚举变量间、枚举常量间、枚举变量与枚举常量间可以进行算术运算和关系运算等。例如:if(c1red)…。 (4)枚举变量也有作用域范围,其含义与一般变量相同。 (5)枚举变量和枚举常量可以作函数参数,函数的返回值也可以是枚举类型。 先定义描述6种颜色的枚举类型colors,然后再用该枚举类型定义枚举数组,任意输入6个颜色号,转换成对应的颜色枚举量后输入到枚举数组中,最后输出枚举数组中对应的颜色 #include stdafx.h #include stdio.h #include iostream.h #include stdlib.h //使用exit(0)函数时必须包含stdlib.h头文件 enum colors{red,blue,green,black,white,yellow}; //定义有六种颜色元素的枚举类型colors void main() { colors color[6]; //定义
您可能关注的文档
- [理学]3东南大学高等数学习题课-数量值函数积分二重_三重_第一型曲线_曲面.ppt
- [理学]3内积空间_正规矩阵与H-阵.ppt
- [理学]3力学的基本定律.ppt
- [理学]3守恒定律.ppt
- [理学]3定理和安培环路定理.pdf
- [理学]3单烯烃.ppt
- [理学]3热力学第一定律.ppt
- [理学]3点的复合运动08.pdf
- [理学]3正交偏光镜下晶体的光学性质.ppt
- [理学]3热第一定律.ppt
- 人教版九年级英语全一册单元速记•巧练Unit13【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit9【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit11【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit14【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit8【速记清单】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit4【单元测试·提升卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit13【单元测试·基础卷】(原卷版+解析).docx
- 人教版九年级英语全一册单元速记•巧练Unit7【速记清单】(原卷版+解析).docx
- 苏教版五年级上册数学分层作业设计 2.2 三角形的面积(附答案).docx
- 人教版九年级英语全一册单元速记•巧练Unit12【单元测试·基础卷】(原卷版+解析).docx
文档评论(0)