Fortran中的星号:(1)处参数列表中的语法错误 [英] Asterisks in Fortran: Syntax error in argument list at (1)
问题描述
SUBROUTINE MSIRNS(D,NOBST,N,X,R ,RR,SURFT,
,INOBSI,ISUR,IDELTS,IRELPS,
,RNOBSI,RSUR,RDELTS,RRELPS,
,OBSD,*,*)
$ b最后两个参数的含义,星号是什么?
以及如何我可以调用函数吗?
我尝试了所有这些变体
pre $ code > RES = CALL MSIRNS(D,NOBST,N,X,R,RR,SURFT,INOBSI,ISUR,IDELTS,IRELPS,RNOBSI,RSUR,RDELTS,RRELPS,OBSD,*,*)
CALL MSIRNS(D ,NOBST,N,X,R,RR,SURFT,INOBSI,ISUR,IDELTS,IRELPS,RNOBSI,RSUR,RDELTS,RRELPS,OBSD,*,*)
RES = CALL MSIRNS(D,NOBST,N, X,R,RR,SURFT,INOBSI,ISUR,IDELTS,IRELPS,RNOBSI,RSUR,RDELTS,RRELPS,OBSD)
但总是得到
错误:参数列表中的语法错误(1)
返回说明符:
http://www.fortran.com/F77_std/rjcnf0001-sh-15.html#sh-15.8.3
在要调用MSIRNS()的代码,您需要用* N替换星号,其中N是备用返回行的标签。
In the following fortran77 code, there is this subroutine definition
SUBROUTINE MSIRNS ( D , NOBST , N , X , R , RR , SURFT ,
, INOBSI , ISUR , IDELTS , IRELPS ,
, RNOBSI , RSUR , RDELTS , RRELPS ,
, OBSD , * , * )
what is the meaning of the two last arguments, asterisks?
and how can I therefore call the function?
I tried all these variants
RES = CALL MSIRNS (D, NOBST, N, X, R, RR, SURFT, INOBSI, ISUR, IDELTS, IRELPS, RNOBSI, RSUR, RDELTS, RRELPS, OBSD, *, *)
CALL MSIRNS (D, NOBST, N, X, R, RR, SURFT, INOBSI, ISUR, IDELTS, IRELPS, RNOBSI, RSUR, RDELTS, RRELPS, OBSD, *, *)
RES = CALL MSIRNS (D, NOBST, N, X, R, RR, SURFT, INOBSI, ISUR, IDELTS, IRELPS, RNOBSI, RSUR, RDELTS, RRELPS, OBSD)
but always get
Error: Syntax error in argument list at (1)
It's an alternate return specifier:
http://www.fortran.com/F77_std/rjcnf0001-sh-15.html#sh-15.8.3
In the code that calls MSIRNS(), you need to replace the asterisks with "*N", where N is the label of the alternate return line.
这篇关于Fortran中的星号:(1)处参数列表中的语法错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!