结构体、共用体和枚举类型

结构体、共用体和枚举类型

ID:39812242

大小:1.32 MB

页数:36页

时间:2019-07-11

结构体、共用体和枚举类型_第1页
结构体、共用体和枚举类型_第2页
结构体、共用体和枚举类型_第3页
结构体、共用体和枚举类型_第4页
结构体、共用体和枚举类型_第5页
资源描述:

《结构体、共用体和枚举类型》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第7章用户自定义数据类型教学目标理解结构体引入的原因,掌握结构体类型、结构体变量的定义方法,熟悉结构体变量的初始化和引用;熟悉结构体数组定义、初始化及使用;熟悉共用体类型变量的定义、变量的引用方式,了解其数据特点;熟悉枚举类型的定义和基本使用方法;了解typedef的功能、最基本用法。重点:结构体类型和结构体变量的定义,结构体变量的初始化和引用,结构体数组定义、初始化及使用,共用体类型、枚举类型定义和变量的使用;难点:结构体、共用体、枚举三者的异同点,类型定义与变量定义的差别,变量的使用及有关说明,枚举类型与整型的比较。第7章用户自定义

2、数据类型7.1结构体7.2共用体7.3枚举类型7.4typedef的使用数据类型基本类型整型字符型浮点型派生类型指针类型(*)数组类型([])结构体类型(struct)共用体类型(union)类类型空类型(void)枚举类型(enum)C++的数据类型概念:结构体(structure)是一种派生数据类型,由用户自己建立,由若干个类型不同数据项组成,是一种组合型数据结构。现假设有如下资料:学号姓名性别年龄成绩家庭地址101001张三m2089.5北京路123号101002李四f1994.3体育东路1号101003王五m2178.0体育西路

3、5号intchar[20]charchar[30]intfloat行:包含几个数据项,反映的是一个学生的整体信息。记录问题:用什么数据类型来存储由多个类型可能不同的数据项组成的“行”信息?7.1.1为什么需要用结构体类型7.1.1为什么需要用结构体类型C++语言提供了一些系统已定义好的数据类型,如int、float、char等供用户使用。我们可以通过这些类型来定义一些变量来存储学生的信息:intnum;//定义学号charname[20];//定义姓名charsex;//定义性别intage;//定义年龄floatscore;//定义成

4、绩charaddr[30];//家庭地址包含int、char、float三种不同数据类型,还定义了两个数组。但这些变量之间无内在联系。7structstudent{intnum;//数据项学号charname[20];//数据项姓名charsex;//数据项性别intage;//数据项年龄floatscore;//数据项成绩charaddr[30];//数据项地址};7.1.1为什么需要用结构体类型如果这样定义一个结构体类型,数据项间就建立联系了。7.1.1为什么需要用结构体类型struct结构体类型名{数据类型成员1;数据类型成员2;

5、……数据类型成员n;};结构体标识,不能省略定义结构体类型的一般形式地位与int、char、float、double等类型名相同,通常首字母大写。已有类型或已定义的“结构体”,每一个数据项可以是不同类型数据项名称,又称“域”structDate{intyear;intmonth;intday;};例:结构体类型名DatestructStudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];};例:结构体类型名Stduent7.1.2结构体类型类型变量的定义方法及

6、初始化1.定义结构体类型变量的方法1)先声明结构体类型,再定义该类型变量2)在定义类型的同时声明变量例如:structStudent{intnum;charname[20];charsex;intage;floatscore;charaddr[30];}student1,student2;structstudent{intnum;//数据项学号charname[20];//数据项姓名charsex;//数据项性别intage;//数据项年龄floatscore;//数据项成绩charaddr[30];//数据项地址};studentst

7、udent1,student2;结构体类型名结构体变量名结构体类型名结构体变量名3)不指定结构体类型名,直接定义结构体类型变量struct{成员表列}变量名表列;说明:(1)结构体类型与结构体变量是不同的概念。只能对变量赋值、存取或运算,而不能对一个类型赋值、存取或运算。在编译时,对类型是不分配空间的,只对变量分配空间(2)对结构体变量中的成员(即“域”),可以单独使用,它的作用与地位相当于普通变量。(3)结构体成员可以属于另一个结构体类型。structDate{intmonth;intday;intyear;};structStude

8、nt{intnum;charname[20];charsex;intage;structDatebirthday;charaddr[30];};例:结构体变量的初始化:即在定义结构体变量时给它的各成员赋初值

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。