猿问

fortran 定义全局变量

fortran 定义全局变量


慕虎7371278
浏览 1270回答 2
2回答

Qyouu

module主要有以下作用:1)module 可以声明变量,经常用来声明程序中所需要的常量、或是用来存放全局变量2)module里面可以定义自定义类型,在经过use的命令可以让程序中的每一个函数都能使用这个类型3)module里面可以编写函数,同样使用use命令。至于你提出的问题,可以用以下程序来解释:module globalimplicit noneinteger a,bcommon a,b! read (*,*) a,bend moduleprogram ex0834use globalimplicit noneread (*,*) a,bwrite(*,*) a,bend program在module里声明了全局变量a,b.在program里就可以省去定义a,b的部分,就可以直接使用a,b.第二个问题,当把module里的注释符“!”去除, 把program里的read(*,*) a,b 注释掉就能发现程序错误,所以我认为在module里,不能通过read赋值。

慕无忌1623718

module变量是模块变量,只要你use这个module就可以对它进行操作了。用fortran编程,起步时尽量的不要拿C或是C++往里套,否则会越学越迷糊:)当然,你也可以认为module变量其实就是C/C++中,某个结构体里面的静态变量:)它的作用域是全局的,但需要你带上结构体(module)的名字:)
随时随地看视频慕课网APP

相关分类

Go
我要回答