第11章指针与动态数据结构.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文档。上传文档
查看更多
第11章指针与动态数据结构

第十一章 指针与动态数据结构 11.1 概述/概述 11.1 概述/存储结构 11.1 概述/访问方式 11.1 概述/指针声明 11.1 概述/指针状态 11.1 概述/概述/动态数据结构示例 11.1 概述/存储结构/示例 11.1 概述/访问方式/示例 11.2 指针引用和赋值/指针引用 11.2 指针引用和赋值/指针赋值 11.2 指针引用和赋值/结构体指针 11.3 整型指针/概述 11.3 整型指针/例11.6 11.3 整型指针/例11.7 11.3 整型指针/概述/示例 11.4 整型指针/NULLIFY 11.4 整型指针/ASSOCIATED 11.4 整型指针/ALLOCATE 11.4 整型指针/DEALLOCATE 11.5 指针数组/指针数组 11.5 指针数组/函数返回 11.5 指针数组/概述/程序 03/04第二学期 * 1. 概述 2. 指针引用与赋值 3. 整型指针 4. 与指针相关的函数和语句 5. 指针数组 6. 动态链表 7. 习题十一 7 《FORTRAN90程序设计》课多媒体课件 静态数据结构:在编译时为其分配存储空间,大小不能改变。 静态数据结构优点:分配算法简单,易于实现,使用方便。 静态数据结构缺点:易浪费存储空间,易产生下标越界错误。 动态数据结构:在运行时为其分配存储空间,大小可改变。 动态数据结构优点:可节约存储空间,灵活,应用广。 动态数据结构缺点:分配算法复杂,实现难度大。 象链表、树结构、图结构等数据结构都适合用动态数据结构实现,指针是实现动态数据结构的有效手段。 指针和动态数据结构广泛应用于软件设计,熟练掌握和灵活应用指针和动态数据结构求解问题,可使程序更加简洁、紧凑、高效。 11.1 概述 第十一章 指针与动态数据结构 概述 存储结构 访问方式 指针声明 指针状态 存储单元地址:存储单元在内存中的排列序号(编号)。 存储分配:系统为变量、数组、结构体、指针分配连续存储单元,用于存储有关数据,其变量名、数组名、结构体名、指针名代表连续存储单元首地址。 指针变量(指针):为其分配的存储单元用于保存其它变量、数组、结构体的地址。通过改变其所存储的地址内容实现动态数据结构。 示例: INTEGER,TARGET :: I=1255 REAL :: R=534.45 CHARACTER*5 ::S=CHINA‘ INTEGER :: A(3)=(/35,45,55/) INTEGER,POINTER :: P P=I 11.1 概述 第十一章 指针与动态数据结构 概述 存储结构 访问方式 指针声明 指针状态 11.1 概述 第十一章 指针与动态数据结构 直接访问:直接访问存储单元中的内容。如对普通变量、数组元素、结构体成员的访问,采用直接访问方式。如图11-2所示。 间接访问:先从存储单元中得到被访问存储单元地址,然后通过该地址访问被访问存储单元中的内容。如对指针变量的访问,采用间接访问方式。如图11-3所示。 指针变量存储单元中保存目标变量地址,通常用箭头表示。F90指针保存目标变量名称,将指针看成目标变量的别名。 指针变量声明后,未分配存储空间,访问前需分配存储空间。 (示例) I 125 125 J 375 3*125 I=125 J=3*I P I 125 125 J 375 3*125 3*P I地址 I=125 P=I J=3*I 概述 存储结构 访问方式 指针声明 指针状态 11.1 概述 第十一章 指针与动态数据结构 POINTER属性:通过POINTER属性声明指针变量。 TARGET属性:通过TARGET属性声明指针可指的目标变量。 一般格式: 类型描述,POINTER[::] 指针变量名{, 指针变量名} 或 POINTER 指针变量名{, 指针变量名} 例: REAL Q1,Q2 INTEGER,POINTER::P1,P2!声明指向整型变量的指针P1和P2 POINTER Q1 !声明指向实型变量的指针Q1 POINTER IQ1,IQ2 !声明指向整型变量的指针IQ1和IQ2 概述 存储结构 访问方式 指针声明 指针状态 11.1 概述 第十一章 指针与动态数据结构 指针有三种状态:未定义、空指针、被关联。 未定义:程序在初始状态中未定义所有指针。 空指针:指针已定义,但未成为目标变量别名。 被关联:指针已定义,已成为目标变量别名。 概述 存储结构 访问方式 指针声明 指针状态 静态数据结构:在编译时为其分配存储空间,大小不能改变。 静态数据结构优点:分配

文档评论(0)

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

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

1亿VIP精品文档

相关文档