C语言程序设计实例教程课件10

PPT
  • 阅读 53 次
  • 下载 0 次
  • 页数 14 页
  • 大小 409.500 KB
  • 2022-11-24 上传
  • 收藏
  • 违规举报
  • © 版权认领
下载文档10.00 元 加入VIP免费下载
此文档由【小橙橙】提供上传,收益归文档提供者,本网站只提供存储服务。若此文档侵犯了您的版权,欢迎进行违规举报版权认领
C语言程序设计实例教程课件10
可在后台配置第一页与第二页中间广告代码
C语言程序设计实例教程课件10
可在后台配置第二页与第三页中间广告代码
C语言程序设计实例教程课件10
可在后台配置第三页与第四页中间广告代码
C语言程序设计实例教程课件10
C语言程序设计实例教程课件10
还剩5页未读,继续阅读
【这是免费文档,您可以免费阅读】
/ 14
  • 收藏
  • 违规举报
  • © 版权认领
下载文档10.00 元 加入VIP免费下载
文本内容

【文档说明】C语言程序设计实例教程课件10.ppt,共(14)页,409.500 KB,由小橙橙上传

转载请保留链接:https://www.ichengzhen.cn/view-44539.html

以下为本文档部分文字说明:

第10章结构体和共用体在程序设计中,把一些关系密切而数据类型不同的数据组织在一起,并为其命名一个名字,这类数据称为结构体。共用体是一种类似于结构体的构造型数据类型,它准许不同类型和不同长度的数据共享同一块存储空间。•10.1结构体类型•10.2共用体10.1结构体类型结构

体,是将若干个类型相同或不同的数据组合成一个有机的集合。10.1.1结构体类型定义使用结构体变量前,要先定义该结构体类型,再定义结构体变量。结构体类型定义的一般格式为:struct结构体名{类型标识符成员名列表;类型标识符成员名列表;…类型标识

符成员名列表;};例如:structstudent{intsnum;charname[10];charsex;intage;charaddr[40];};10.1.2结构体变量的定义、引用和初始化1.结构体变量定义定义结构体变量有三

种方法。(1)在定义结构体类型的同时定义结构体变量。(2)先定义结构体类型,再定义结构体变量。(3)直接定义结构体变量。2.结构体变量的引用对结构体变量进行操作时,除了可以对相同类型的结构体变量进行整体赋值外,不可以对一个结构体变量整体赋值。要对一个结构体变量进行操作,其引用的方式为:结构体变量名

.成员名3.结构体变量的初始化与数组的初始化类似,结构体变量只能对外部和静态结构体变量初始化。初始化数据之间要用“,”隔开,不进行初始化的成员项要用“,”跳过。10.1.3结构体数组有序数据的集合称为数组,结构体变量组合在一起

称为结构体数组。其定义方式同一般数组一样,例如:structstudentstu[10];这样就定义了一个包含有10个元素的结构体数组,其每个数组元素都是一个结构体类型的数据。10.1.4结构体的指针1.结构体指针的定义及应用定义结构体的指针,使该指针指向某一类型结构体变量或结构体数组的首地址

。如定义一个structstudent结构类型的指针:structstudent*p1,*p2,stu1,stu[10];要使其指向某一个变量,则必须给它赋值,例如:p1=&stu1;p2=stu;p1指向结构体变量stu1的首地址,p2指向结构体数组stu的首地址。如需用结构体的指针访

问结构成员,可以采用以下方式:(*指针名).成员名在C语言中,采用“->”(减号、大于号)运算符来简化调用。例如,要访问指针p1指向的结构体变量的成员,可以采用(*p1).snum,(*p1).name,(*p1).sex,(*p1).age,(*p1).addr也可以采用p1-

>snum,p1->name,p1->sex,p1->age,p1->addr。2.用结构体指针作函数参数可以通过传递结构体变量的成员及传递整个结构体变量或结构体数组的方法来传递数据,还可以通过结构体指针作为函数参数传递数据。10.1.5利用结构体变量构

成链表链表就是利用递归定义,使得由第一个结构体变量可以找到第二个结构体变量,也就是说如果知道链表的首地址,可以获得整个链表。由于链表的每一个节点的物理位置不是固定的,所以需要以下函数来动态地分配空间及释放空间。(1)malloc(size)动态申请一个长度为size的连续空间,此函数返回一个指针

,指向该空间的起始地址,如果错误则返回0。(2)free(ptr)释放ptr所指向的内存区。10.2共用体在程序设计中,采用共用体比使用结构体节省空间,但是访问速度慢。10.2.1共用体类型说明公用体类型的说

明与结构体类型的说明类似,方法如下:union公用体名{类型标识符成员名列表;类型标识符成员名列表;…类型标识符成员名列表;};公用体变量所占内存的长度是成员中最长的长度,在这样一个空间中可以存放不同类型和不同长度的数据,而这些

数据都是以同一地址开始存放的。例如,定义一个公用体其中包括整型、字符型、实型变量,这三种数据类型的成员共享同一块内存空间。unionunidata{inti;charch;floatf;}d1,d2,d3;这样d1、d2、d3就是一个公用体变量。由于在该结构体类型中实型变量占有内存单元4

个字节,是最长的成员,所以公用体变量d1、d2、d3都分配4个字节的内存单元。10.2.2共用体变量的定义、引用共用体变量的定义同结构体类型变量的定义可以有三种定义方法。其引用也同结构体类型变量的引用,是使用运算符“.”和“->〉”。在使用共用体变量的时候要注意在程序执行的某一时刻,只有一个共用

体成员起作用,而其他的成员不起作用。两个具有相同共用体类型的变量可以互相赋值。可以对共用体变量进行取地址运算。

小橙橙
小橙橙
文档分享,欢迎浏览!
  • 文档 25747
  • 被下载 7
  • 被收藏 0
相关资源
广告代码123
若发现您的权益受到侵害,请立即联系客服,我们会尽快为您处理。侵权客服QQ:395972555 (支持时间:9:00-21:00) 公众号
Powered by 太赞文库
×
确认删除?