第七章 用户自定义数据类型ppt课件.ppt

第七章 用户自定义数据类型ppt课件.ppt

ID:59016141

大小:110.50 KB

页数:51页

时间:2020-09-26

第七章 用户自定义数据类型ppt课件.ppt_第1页
第七章 用户自定义数据类型ppt课件.ppt_第2页
第七章 用户自定义数据类型ppt课件.ppt_第3页
第七章 用户自定义数据类型ppt课件.ppt_第4页
第七章 用户自定义数据类型ppt课件.ppt_第5页
资源描述:

《第七章 用户自定义数据类型ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第七章用户自定义数据类型7.1结构类型及其变量的定义7.1.1结构类型的定义结构是具有相关变量的集合体,结构内可包含许多不同数据类型的变量,而在数组中只能包含具有相同数据类型的元素。将相同或不同类型的数据组合在一起形成的新类型称为结构类型或结构体类型。结构体类型的一般定义格式为:struct[结构体名]{类型名1结构体成员名表1;类型名2结构体成员名表2;……类型名n结构体成员名表n;};structtagStudent{unsigedintnum;//学号charname[20];//姓名intage;//年龄charsex;//性别floatscore;//成绩};7.1.2结构

2、类型数据对象的定义及初始化结构变量的定义:定义结构类型的同时定义结构变量:struct结构体名{数据成员说明列表}变量名表;定义结构类型后定义结构变量:struct结构变量名变量名列表;如果在定义结构类型的同时定义结构变量则可以不用给出结构类型名。struct{数据成员说明列表}变量名表;用typedef说明一个结构体类型名,再用类型名进行变量定义。(4.5节介绍)结构体变量初始化定义结构变量的同时进行初始化:structtagStudentstrdent1={1,”chence”,25,0,85.5};定义结构变量后进行初始化:student1.num=1;strcpy(stude

3、nt1.name,"chence");student1.age=25;student1.sex='f';student1.score=85.5;结构体的大小:值为该结构体各成员所分配的存储空间之和。结构体变量名不表示该变量的首地址结构体变量不可整体输入输出相同类型结构体变量之间的整体赋值结构体变量x=结构体变量y;4.2.7位段位段的定义:以位为单位定义变量所占内存空间的大小。可以在结构定义时指定成员变量所占的位数,这样的成员变量称为位域,其类型必须是整型或无符号整型。形式如下:struct结构名称{类型变量名1:位长度;类型变量名2:位长度;……类型变量名n:位长度;}实例:exa

4、mple657.1.3结构体成员的引用结构成员的表示结构体变量成员的访问可以用运算符“.”,其一般形式为:结构变量名.成员变量名实例:c601结构指针成员表示的语法形式:结构指针名->成员名;7.2结构数组7.2.1结构数组的定义及其应用结构体数组的定义定义结构体的同时定义结构体数组struct结构体类型名{结构成员变量列表;}结构体数组名[长度];定义结构变量之后定义结构数组struct结构体类型名结构数组名[长度];结构体数组成员的使用结构体数组元素.成员名;结构体数组初始化结构数组的初始化将数组的初始化和结构的初始化结合起来进行的。structtagStudentstudent

5、[2]={{1,"chence",25,'f',85.5},{2,"jiangxinyan",24,'m',80}};7.2.2对结构数组的操作引用结构数组元素数组名[下标表达式]或*(数组名+i)如:student[2]、*(student[3])引用结构数组元素的成员结构数组名[下标表达式].成员名如:student[2].ave实例:c602、c6037.2.3嵌套结构一个结构的成员可以是另一个结构类型的变量。structAstructB{inta1;{structAm;floata2;intk;};};B中的成员变量m的数据类型为结构A,称结构B是一个嵌套结构。如果一个结构是

6、多级嵌套的,则可以按如下方式访问到其成员变量m中的各个成员:结构变量1.结构变量2….结构变量n.成员实例:book7.3结构和指针7.3.1指向结构变量的指针在定义一个结构体变量时,系统将在内存中分配一块连续的存储空间,用于存放结构体成员的数据,这块连续存储空间的首地址称为结构体指针(也称为结构体变量的首地址)。把结构体变量的首地址赋值给一个指针变量,则称这一指针变量指向结构体变量。定义指向结构变量的指针struct结构类型名*结构指针名;结构指针的初始化可以赋予其一个已存在的、基类型相同的结构变量的地址,也可以赋予空地址。如:structEmployeeemployee,*Emp

7、Ptr=&employee;存取结构体成员的方法:结构体变量.成员名指针变量->成员名(*指针变量名).成员名其中”->”表示指向结构成员(*指针变量名)等价于结构体名实例:5517.3.2指向结构数组的指针结构体指针变量可以指向结构体数组及元素。注意运算符的优先级和结合性实例:example63、5167.3.4结构作为函数参数传递利用结构作为函数参数传递用结构变量作为函数的形参实例:715、c604用结构指针变量作为形参实例:716用结构数组作为实参,

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

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

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