第十三讲_结构体和线性链表(一).pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
14 《C++语言及编程技巧》 第13讲 结构体与线性链表 第13讲 结构体与线性链表(一) 引述 6.1 用typedef定义类型 6.2 结构体变量说明与赋值操作 6.3 结构体数组和结构体指针 6.4 动态存储分配与释放 引述 用typedef定义类型 结构体变量说明与赋值操作 结构体数组和结构体指针 动态存储分配及释放 线性链表概念 线性链表的生成与遍历 在已知线性链表中的插入与删除操作 双向链表结构与双向链环结构 6.1 用typedef定义类型 关键字typedef可用于建立已定义好的数据类型的别名。 类型定义语句的一般形式 6.1 用typedef定义类型 经常使用typedef语句建立基本数据类型包括构造类型(如数组类型)的别名。 例1 类型定义语句示例 typedef int INTEGER; typedef float REAL; typedef char CHARACTER; typedef int ARRAY10[10]; typedef char *POINTER; 使用typedef语句可使程序具有更好的可移植性。 6.1 用typedef定义类型 例2 承例1,定义各类变量 INTEGER i,j; REAL r,s,t; CHARACTER ch; ARRAY10 a,b,c,d; POINTER pa,pb; 它们等价于 int i,j; float r,s,t; char ch; int a[10],b[10],c[10],d[10]; char *pa,*pb; 6.2 结构体变量说明与赋值操作 结构体是用同一名字引用的相关变量的集合 结构体中可包含多种不同数据类型的变量,它们被称做结构体的成员 每一结构体的成员都具有自己的名字(成员名),且属于某一数据类型 结构体通常用来定义文件中的记录 结构体与指针相灵活运用,可构成线性链表结构 6.2 结构体变量说明与赋值操作 类型1 结构体成员名表1; 类型2 结构体成员名表2; 类型n 结构体成员名表n; 6.2 结构体变量说明与赋值操作 例3 下列结构体类型定义分别表示复数、日期、通讯录及学生成绩档案 struct complex { float re,im; }; struct date { int month,day,year; }; struct yellowpage { char name[15]; char address[30]; char zipcode[6]; char phone[15]; }; 6.2 结构体变量说明与赋值操作 struct student { char class[10]; int number; char name[15]; char sex; int age; int scores[3]; float average; }; 6.2 结构体变量说明与赋值操作 说明结构体变量(简称结构体)可有多种形式。 形式一 先定义结构体类型,后说明结构体变量 例4 结构体变量说明示例一 struct complex { float re,im; }; struct complex z1,z2; 6.2 结构体变量说明与赋值操作 形式二 在定义结构体类型的同时说明结构体变量 例5 结构体变量说明示例二 struct complex { float re,im; } z1,z2; 形式三 利用匿名结构体类型说明结构体变量 例6 结构体变量说明示例三 struct { float re,im; } z1,z2; 6.2 结构体变量说明与赋值操作 形式四 利用类型定义语句为结构体类型取别名,再用此别名说明结构体变量 例7 结构体变量说明示例四 6.2 结构体变量说明与赋值操作 形式五 利用宏定义命令将结构体类型(即struct 结构体名)重新取名,再用此新名说明结构体变量 例8 结构体变量说明示例五 #define COMPLEX struct complex COMPLEX { float re,im; } COMPLEX z1,z2; 6.2 结构体变量说明与赋值操作 结构体变量说明中可带初始化赋值。 例9 结构体变量初始化示例 struct complex { float re,im; }; struct complex z1={2.0,7.0},z2={2.0,7.0}; struct date { int month,day,year; }; struct date sf={1,24,2001}; 6.2 结构体变量说明与赋值操作 如果初始化值的个数少于结构体中的成员

文档评论(0)

daijun + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档