[理学]第05章 结构体与共用体

[理学]第05章 结构体与共用体

ID:27734356

大小:1.30 MB

页数:34页

时间:2018-12-04

[理学]第05章  结构体与共用体_第1页
[理学]第05章  结构体与共用体_第2页
[理学]第05章  结构体与共用体_第3页
[理学]第05章  结构体与共用体_第4页
[理学]第05章  结构体与共用体_第5页
资源描述:

《[理学]第05章 结构体与共用体》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、厦门理工学院 计算机科学与技术系1厦门理工学院高级语言程序设计教学课件第5章结构体与共用体厦门理工学院计算机科学与技术系2021/8/14教 师:谢小竹E-Mail:xzxie@xmut.edu.cn厦门理工学院 计算机科学与技术系22本章主要内容结构体类型与结构体变量结构体数组共用体枚举类型typedef定义类型厦门理工学院 计算机科学与技术系3结构简介存储一个班级中5名学员的信息(学号、姓名、性别和成绩)问题:I.使用数组MaryJohnPeterRoseKateFMFMF01020304058978.56797.564解决方案:scoren

2、umsexname不能建立数组间的关系II.使用多维数组MaryJohnPeterRoseKateFMFMF01020304058978.56797.564C语言不允许一个数组包含多种数据类型III.使用结构体numnamesexscoreC语言引入了称为结构体的数据存储方式“结构体”是一种构造数据类型,它是由若干数据项组合而成的复杂数据对象,这些数据项称为结构的成员。厦门理工学院 计算机科学与技术系45.1结构体的定义structstructurename{datatypevariable1;datatypevariable2;...};结构体

3、成员{};结构体名structstudentintnum;charname[20];charsex;定义结构体floatscore;C语言中的有效数据类型厦门理工学院 计算机科学与技术系5structstudent{intnum;charname[20];charsex;floatscore;};numnamesexstudent结构体定义放置在程序的开始部分,位于头文件声明之后;score结构体定义仅描述了一个结构的形式。如果要在程序里使用结构体,需要声明结构体变量。5.1结构体变量的定义厦门理工学院 计算机科学与技术系6structstude

4、nt{intnum;charname[20];charsex;intage;floatscore;charaddress[50];};结构体类型名结构体各成员定义结构体类型大括号外要加分号structstudentstu1,stu2;系统不为结构体类型的定义开辟内存单元,只当定义了结构体变量后才会为变量分配相应大小的内存单元。stu1和stu2在内存占几个字节?声明一个类型为student结构的变量,将会为该变量分配内存,大小是大于或等于其所有成员变量的大小之和。厦门理工学院 计算机科学与技术系7声明结构变量structstudent{intnu

5、m;charname[20];charsex;floatscore;};structstudentstudent1,student2;I.先定义结构,再声明结构变量structstudent{intnum;charname[20];charsex;floatscore;}student1,student2;II.在定义结构类型的同时声明结构变量struct{intnum;charname[20];charsex;floatscore;}student1,student2;III.直接声明结构变量5.1结构体变量的定义厦门理工学院 计算机科学与技术

6、系8几点说明:结构体类型与结构体变量概念不同类型:不分配内存;变量:分配内存类型:不能赋值、存取、运算;变量:可以(2)结构体可以嵌套例:structdate{intmonth;intday;intyear;};structstudent{intnum;charname[20];structdatebirthday;}student1;numnamebirthdaymonthdayyear例:structstudent{intnum;charname[20];structdate{intmonth;intday;intyear;}birthday

7、;}student1;numnamebirthdaymonthdayyearstructPoint{intx,y;};structImg{inttag;structImg*pimg;//正确,可以包含自身类型的指针structImgimg;//错误,不能包含自身类型的变量};厦门理工学院 计算机科学与技术系9structdate{intmonth;intday;intyear;};struct{intnum;charname[20];charsex;structdatebirthday;floatscore;}student1,student2;

8、表示结构变量成员的一般形式是:结构变量名.成员名例如:student1.num、student2.sex、student1.birthd

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

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

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