大学基础教程第七章课件.ppt

大学基础教程第七章课件.ppt

ID:57046240

大小:77.50 KB

页数:24页

时间:2020-07-28

大学基础教程第七章课件.ppt_第1页
大学基础教程第七章课件.ppt_第2页
大学基础教程第七章课件.ppt_第3页
大学基础教程第七章课件.ppt_第4页
大学基础教程第七章课件.ppt_第5页
资源描述:

《大学基础教程第七章课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、C++大学基础教程第7章其它自定义数据类型北京科技大学2021/8/231北京科技大学C++语言不仅有丰富的基本数据类型,而且允许用户自己定义数据类型。2021/8/232北京科技大学7.1枚举型数据类型(不要求)7.2结构型数据类型7.3联合型数据类型(不要求)第7章C++其他自定义数据类型2021/8/233北京科技大学7.2结构类型结构变量的定义 结构成员的访问 结构指针 结构数组2021/8/234北京科技大学结构型数据类型(简称结构类型)把现实生活中意义密切相关的一组数据组合成一个整体,即由各种数据类型(可以是基本数据类型或已声明的自定

2、义数据类型)的数据组成一个集合,称为结构类型。7.2结构类型2021/8/235北京科技大学结构的声明形式如下:struct结构类型名{数据类型说明符1成员名1;数据类型说明符2成员名2;┇数据类型说明符n成员名n;};7.2结构类型2021/8/236北京科技大学例如:structstudent{longnum;//学号charname[20];//姓名intage;//年龄floatscore;//成绩};7.2结构类型2021/8/237北京科技大学定义student类型的变量:students1;结构类型的变量所占的存储空间是结构中所有成

3、员所占空间的总和圆点操作符访问形式:结构变量名.成员名例如:cout<usingnamespacestd;structstudent{l

4、ongnum;charname[20];charsex;intage;}stu={20041118,"LiLi",'F',18};voidmain(){cout<usingnamespacestd;structdate{intyear;intmonth;intday;};structweather{datetoday;doubl

5、etemp;doublewind;};2021/8/2311北京科技大学例7.3访问带有结构体类型的结构体成员voidmain(){weathertoday_weather={2004,11,30,10.0,3.1};cout<

6、dl;}2021/8/2312北京科技大学属于同一结构类型的各个变量之间可以相互赋值,这一点和数组不同,C++规定,不能直接进行数组名的赋值,因为数组名是一个常量,而结构类型的变量可以赋值。students1,s2;s1=s2;不同结构的变量不允许相互赋值,即使这两个变量可能具有同样的成员。structgraduatestudent{…..};graduatestudentgstu;gstu=stu;//错误7.2结构类型2021/8/2313北京科技大学定义变量时,我们可以定义指向int型的指针变量,类似的,可以有指向新定义的结构型数据类型的指

7、针变量。可以将结构变量的地址赋给结构指针,使结构指针的指向确定。使用取地址“&”操作,得到结构变量的地址,这个地址就是结构的第一个成员的地址。structstudent{longnum;charname[20];charsex;intage;}stu={20041118,"LiLi",'F',18};Student*ps=&stu;结构类型与指针2021/8/2314北京科技大学结构类型与指针使用new操作在堆中给结构指针分配空间student*ps=newstudent;用结构指针访问结构成员时,用箭头操作符代替原来的点操作符cout<

8、>score;cout<<(*ps).score;2021/8/2315北京科技大学例7.4结构指针的定义和使用#include

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

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

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