Module var
Implicit None
integer,public:: n
integer,private:: i,j
contains
subroutine cal(n)
integer n ! n变量如果定义能顺利运行,若不定义,会出现如下错误
! This name does not have a type, and must have an explicit type. [N]
! 但是,n已经在module中定义为public变量了,为啥不能直接用
j=0
do i=1,n
j=j+i
write(*,*)i,n,j
end do
end subroutine cal
end Module var
program main
use var
Implicit None
n=10
call cal(n)
pause
end
vvt 发表于 2017-7-10 09:31
在module中contains的子程序(或函数),他们可以访问的变量有:
1. 虚参
2. 局部变量
vvt 发表于 2017-7-10 09:31
在module中contains的子程序(或函数),他们可以访问的变量有:
1. 虚参
2. 局部变量
fcode 发表于 2017-7-10 20:58
如果你要表达的是 module 中定义的 n,那么确实不需要通过虚参来传递 n 了。
这样做的风险就是,会降低可 ...
vvt 发表于 2017-7-10 09:31
在module中contains的子程序(或函数),他们可以访问的变量有:
1. 虚参
2. 局部变量
欢迎光临 Fortran Coder (http://bbs.fcode.cn/) | Powered by Discuz! X3.2 |