回 帖 发 新 帖 刷新版面

主题:[讨论]fortran 通用输出

各位大神,我最近想把程序改得通用了,以下这个问题不知道如何解决?

变量时1个时,输出如下:

 WRITE(*,*)'VARIABLES = "ZB","UX1","UY1","ZSUR","CT1","AGE1","AAGE"' 
变量时2个时,输出如下:
 WRITE(*,*)'VARIABLES = "ZB","UX1","UY1","UX2","UY2","ZSUR","CT1","AGE1","CT2","AGE2","AAGE"' 

回复列表 (共1个回复)

沙发

是说判断 subroutine或者function里输入变量有几个?
subroutine WriteVariables (a, b)
int a
optional, int :: b !用optional修饰第二个变量

if(present(b)) then !用present判断第二个变量有没有传进来,结果如果为true,说明是两个变量
 WRITE(*,*)'

else !一个变量的情况
 WRITE(*,*)'
end if
end

我来回复

您尚未登录,请登录后再回复。点此登录或注册