fortran 中 present命令 是什么意思?

if(present(Res5)) then。。。

if 语句中的判断标准是不是像c语言中的 :if 1 执行 ,if 0 则不执行
那么这句话中的present(Res5)的值 可以是 true 或者 false吗?

是的。if 是判断真假。

present 的意思是,判断某些可忽略的参数是否指定了。

比如一个子程序 subroutine sub(a,b,c)
其中,C 是可选参数:real , optional :: c
那么调用时,可以 call sub(a,b,c) 也可以 call sub(a,b)
对于后一种情况,present(c) 就是假,因为没有传入 C
前一种情况,present(c) 就是真
温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-10-10
PRESENT(x)
查询可选形参x是否有对应实参。x:AT,结果:L。有:.TRUE.,没有:.FALSE.

L代表逻辑型;AT为任意类型。

可以,但是fortran里面是,.true.和.false.
相似回答