- 1、本文档共89页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Fortran0806.ppt
* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 过程接口 对于内部过程、内在过程和模块,过程接口对编译程序而言是己知的和显式给出的,故称显式接口。 在调用一个外部过程或一个哑过程时,编译系统通常不知道该过程的各种情况,这种接口是隐式的。 过程接口确定过程被调用的形式,它由过程的特性、过程名、各哑元的名字和特性以及过程的类属标识符(可以省略)组成,一般它们都被写在一个过程的开头部分。此接口块被放在主调程序的说明部分中 。 INTERFACE语句 接口体是过程头的精确拷贝,定义了过程中的变量和函数结果。 接口块以INTERFACE语句开始,END INTERFACE语句结束,块内只能取被调用过程中的说明部分,不允许出现任何可执行语句。 接口体中不能含有ENTRY语句、DATA语句、FORMAT语句、语句函数语句。 接口块不允许出现在BLOCK DATA程序单元中。 ?? 接口块中可以有多个接口体,即一个接口块中可以说明多个被调用过程,每个过程用自己的开始语句与结束语句定界,排列次序任意。 Scope 模块 :共享与复制 模块也是一种在主程序单元之外独立编写的程序单元。 它有独特的形式,即模块程序单元内没有可执行语句。除了说明语句外,最多包含内部过程。供其它程序单元引用。 一个程序单元如果引用模块,实际上就是把该模块内的全部语句复制到本程序单元中,并且所有与模块中的名字相同的变量等,彼此取值相通、共享存贮单元。 数据共享 不同的程序单元是各个分别编译的,编译工作中很重要的一件事是给程序单元中各变量分配内部存贮单元(内存单元)。由于是分别编译的,程序单元A中的变量X所占存贮单元与程序单元B中变量X所占存贮单元不可能是在同一个存贮单元中,因此,程序单元中同名的变量名并不能相互传递数值。 两个不同的程序单元间的变量相互传递数值有两个办法,一个是哑实结合,一个就是数据共享。 共享方式在变量间相互传递数值 共享就是让编译系统把两个变量名分配在同一个内存单元中。 已知访问一个变量名,实际上就是访问它所分配的内存单元中存贮的值。既然A程序单元中的变量X与B程序单元中的变量Y分配在同一存贮单元中,访问X或访问Y都是访问同一个内存单元,取得的数也是相同的。 如果两个变量共享存贮单元,当A程序单元中X=2时,B程序单元中Y也是2。如果A程序单元中执行语句X=X+1,则B程序单元中Y的值也变为3,反之也然。当然,前提是X和Y的类型必须一致。如果类型不一致,其结果将很难预料。 共享方式有以下几种: COMMON语句 EQUIVALENCE语句 ? 模块 INCLUDE语句 COMMON语句 COMMON语句用于在不同程序单元之间进行实体的数据批量传递,它比哑实结合的方法进行数据传递的速度要快。 INCLUDE语句 用INCLUDE语句将另一个文件中的原程序段包括进来,实现复制功能。 INCLUDE语句的功能是让编译器停止读取当前文件而从一个文件中读取语句,读完后再继续读取当前文件中的下一条语句。 模块 出现在模块中的变量,都能与引用该模块的程序单元中的变量共享。 模块中如果有内部过程,这些过程也可为各引用该模块的程序单元所共用,因而又起了过程库的作用。 提供一种方便有效的常量、变量、类型定义及过程的共享途径。它可代替COMMON、EQUIVALENCE和INCLUDE语句的功能。 模块的功能 包含通常使用的过程 声明全局变量和派生类型 声明外部过程的接口块 初始化全局数据和全局可分配数组 封装数据和处理数据的过程 模块 模块单元内没有可执行语句,除了说明语句外,最多包含内部过程。 模块不能被直接执行,必须用USE语句引用。 引用模块 模块的PRIVATE属性 禁止一切外部过程(包括主程序)访问派生类型的内部成员, 只需改写派生类型部分,引用模块的各程序单元可不必改动。 模块内的变量改名 ONLY选项 模块的应用 :全局数据 模块的应用 :过程共享 利用模块,还可以把整个可执行程序中都要用到的全局过程封装在一起,即把这些过程放在一个模块中统一说明,而在需要这些过程的程序单元内使用USE语句导出它们即可,这就是模块过程。 使用的方式是,首先在模块中把待用的全局过程定义为模块的内部过程,即写在CONTAINS语句之后,在调用过程单元中写上USE语句以调用此模块,再写上接口块,接口块的实体是模块过程语句 模块的应用 :公用派生类型
您可能关注的文档
- cam350拼板过程.doc
- Camtasia Studio录屏软件使用说明.doc
- camtasiastudio录屏培训.ppt
- CamtasiaStudio录屏软件使用方法.doc
- CASS中连续点号自动连线.ppt
- CAT3400故障排除.xls
- catia点云造型中文教学.ppt
- CAXA学习04.ppt
- CBR承载比.xls
- CCC护套、覆盖层连硫挤橡过程监控记录.doc
- 2024年刀熔开关项目资金申请报告代可行性研究报告.docx
- 2024年报刊业项目资金筹措计划书代可行性研究报告.docx
- 2024年虹膜检测仪项目投资申请报告代可行性研究报告.docx
- 2024年GPS同步钟项目投资申请报告代可行性研究报告.docx
- 2024年纺织产品项目投资申请报告代可行性研究报告.docx
- 2024年冷墩钢项目资金申请报告代可行性研究报告.docx
- 2024年餐椅项目资金申请报告代可行性研究报告.docx
- 2024年有机化学原料项目资金需求报告代可行性研究报告.docx
- 2024年高档工艺品项目投资申请报告代可行性研究报告.docx
- 2024年社会公共安全设备及器材项目投资申请报告代可行性研究报告.docx
文档评论(0)