fortran课件 第9章re.ppt

  1. 1、本文档共54页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
fortran课件 第9章re

第 十 章 指 针 §第十章 指针 存取变量的方式: 1)直接访问,按照变量i的地址存取变量值 2)间接访问,声明一个变量i-pointer,作为变量i的一个别名,指向变量I, 通过i_pointer就能知道变量i所占的内存中所存放的内容。这个别名为该变量的“指针”, 作为别名的变量即为“指针变量”。 §第十章 指针 §10-1 指针的基本概念 (一)指针变量的声明的形式: 类型说明,pointer :: 指针变量名【(数组描述)】 类型说明 用来声明指针所指的目标变量的类型。可以是任意数据类型,包括自定义类型 Pointer 为关键字 指针变量名 和变量名的取法相同 数组描述 (:,:,…, :)其中冒号的个数与数组的维数一致, 每一维的大小不作声明 §10-1 指针的基本概念 (二)指针变量的应用方式: 1) 一般变量的应用: 相当与一般变量的别名 2) 动态变量的应用: 相当于动态分配所得内存的别名 一般变量的应用:可以指向任意数据类型变量,及数组或局部数组,目标和指针的类型要匹配。这与C语言的指针不同。 Interger, pointer:: p Interger, target:: a P=a §10-1 指针的基本概念 Statement and Attribute: Specifies that an object is a pointer (a dynamic variable). A pointer does not contain data, but points to a scalar or array variable where data is stored. A pointer has no initial storage set aside for it; memory storage is created for the pointer as a program runs. 指针可以指向另一个有关联的指针,关联关系传递。 指针可以指向另一个有关联的指针,关联关系传递。 例2:动态变量的应用,使用指针,动态配置内存 §10-1 指针的基本概念 (三) 检查指针是否有所指向: ASSOCIATED(POINTER [,TARGET]) 返回逻辑值 确保指针没有指向任何目标: NULLIFY(POINTER1[, pointer2, pointer3…]) 类似的FORTRAN 95 添加:NULL( )函数返回一个不能使用的内存地址。 Poiner=null( ) §10-2 指针数组 声明成数组的指针有两种使用方法: (1)把指针指向其他数组或部分数组来使用 (1)配置内存空间来使用 例,给指针变量配置内存空间 例, 多维数组指针的用法 §10-2 指针数组 一个数组指针可以方便的使用某个数组变量的一部分 数组指针可以配置空间来使用,相当于可变大小的数组变量,不同点: 声明成ALLOCATABLE的数组有它的生存周期,只存在于声明它的函数中;函数结束则会释放内存空间。而指针所配置的内存直到程序DEALLOCATE, 或程序结束,操作系统回收内存空间 §10-3 指针与函数 指针变量可以作为函数的传递参数和返回值,应用时,要使用Interface作参数接口声明 虚参是指针,实参必须是指针 虚参是目标,实参可以是指针也可以不是 指针参数声明时,不需要INTENT这个词 例:求指针数组中的最小值 采用module封装,使用指针作参数的或返回值的函数,则不需要interface §10-4 指针的基本使用 自定义类型的指针的使用 §10-5 指针的高级使用 指针可以指向其他变量,从而建立各种“串行结构”以及“树状结构”,并可以动态的使用内存空间 Rules and Behavior No storage space is created for a pointer until it is allocated with an ALLOCATE statement or until it is assigned to a allocated target. A pointer must not be referenced or defined until memory is associated with it. §10-5-1 单向串行 实现动态的配置内存,并可以随意的插入和删除其中的元素,较动态数组方便。 实际的应用

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

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

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档