全国计算机等级考试培训教材(二级C)课件 ch10 结构体和共用体_第1页
全国计算机等级考试培训教材(二级C)课件 ch10 结构体和共用体_第2页
全国计算机等级考试培训教材(二级C)课件 ch10 结构体和共用体_第3页
全国计算机等级考试培训教材(二级C)课件 ch10 结构体和共用体_第4页
全国计算机等级考试培训教材(二级C)课件 ch10 结构体和共用体_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

计算机等级考试第十章结构体和共用体高等院校公共课系列精品教材用typedef声明新类型名01ONE10.1用typedef声明新类型名考点1用typedef声明新类型名功能:为已有数据类型取別名。类型定义形式:typedef类型名

标识符;例如:typedefdoubleD;Dpi=3.14;说明:(1)定义的标识符只是原有数据类型的一个别名,并不是建立一个新的数据类型。(2)用标识符和原数据类型定义的对象具有相同的性质和效果。(3)定义新类型名的目的是方便变量的定义,如结构体类型的形参变量。结构体类型变量的定义和引用02TWO10.2结构体类型变量的定义和引用考点2结构体变量的定义考点3结构体变量各成员的引用有4种方式定义结构体类型的变量、数组和指针。说明:Stu1是一个结构体类型的变量,stu[10]是具有10个元素的结构体数组,p是可以指向结构而类型的指针。可以对结构体变量整体操作,也可以对结构体变量的各成员单独引用,引用结构体成员变量一般有以下三种情況。引用结构体变量的成员的方法:结构体变量名.成员名(如stul.num)。结构体指针变量引用成员的方法。形式1:(*指針変量名).成员名(如(*p)num)。形式2:指针变量名->成员名(如p->num)。结构体变量与函数调用03THREE10.3结构体变量与函数调用考点4结构体变量与函数调用将一个结构体变量的值传递给另一个函数,有3种情况。(1)用结构体变量的成员作为参数。例如,用stu1.num作为实参,将值传递给形参。用法和用普通变量作为实参是一样的,属于“单向值传递”方式。应当注意实参与形参的类型要保持一致。(2)用结构体变量作为实参。对应形参也是同类型结构体变量,也属于“单向值传递方式。(3)用指向结构体变量(或数组)的指针作为实参。将结构体变量(或数组元素)的地址传给形参,属于“地址传递”方式,应注意在被调用函数中是否对该地址的值有影响。动态存储函数04FOUR10.4动态存储函数考点5calloc()函数考点6free()函数考点7malloc()函数函数原型:void*calloc(unsignedn,unsignedsize);功能:分配n个数据项的内存连续空间,每个数据项大小为size。函数原型:voidfree(void*p);功能:释放p所指的内存区。函数原型:void*malloc(unsignedsize);功能:分配size字节的存储区。链表05FIVE10.5链表考点8链表链表是一种重要的数据结构,它是动态地进行存储单元分配的一种结构。当一个结构体中有一个或多个成员的基类型就是本结构体类型时,通常把这种结构体称为可以“引用自身的结构体”,也称为“链表结构”。对链表进行的操作通常有以下4种。(1)建立带有头节点的单向链表。structstd{intdata;/*数据域*/structstd*next;/*指針域*/};建立头节点和数个节点,即建立如图所示链表。10.5链表考点8链表(2)顺序访问单向链表各节点数据域的值(即遍历链表)。遍历链表核心语句:p=head;while(p!=0){ printf("84d",p-›data); p=p->next;};(3)删除单向链表中的某个节点,如图所示。删除q指向的节点语句:P->next=q->next;或者p->next=r;Free(p);10.5链表考点8链表(4)向单向链表中插入节点,如图所示。将r指向的节点插入p、q所指的两个节点之间:r->next=q;或者r->next=p->next;P->next=r;共用体06SIX10.6共用体考点9共用体类型定义•共用体是一种构造数据类型(遵循先定义类型,再定义该类型变量的原则)。•用途:使几个不同类型的变量共占一段内存(相互覆盖)。•结构体与共用体的区别和联系。(1)区别:存储方式不同。结构体变量占用的内存单元是其所有成员占内存

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论