首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Fortran子例程参数列表中,星号*符号意味着什么?

在Fortran子例程参数列表中,星号*符号意味着什么?
EN

Stack Overflow用户
提问于 2017-10-07 01:52:04
回答 1查看 2.2K关注 0票数 3

*作为子例程中的参数意味着什么?它是否意味着一个标签并返回到主程序?它与returnreturn 1ERRERROR有关吗?我不知道为什么我们有这些,但我认为星号与它们有关。

代码语言:javascript
复制
  !>Start the creation of boundary conditions for the equation set.
SUBROUTINE  BOUNDARY_CONDITIONS_CREATE_START(SOLVER_EQUATIONS,BOUNDARY_CONDITIONS,ERR,ERROR,*)

!Argument variables
INTEGER(INTG), INTENT(OUT) :: ERR !<The error code
TYPE(VARYING_STRING), INTENT(OUT) :: ERROR !<The error string
!Local Variables
TYPE(VARYING_STRING) :: LOCAL_ERROR

ENTERS("BOUNDARY_CONDITIONS_CREATE_START",ERR,ERROR,*999)

    IF(ASSOCIATED(BOUNDARY_CONDITIONS)) THEN
      CALL FlagError("Boundary conditions is already associated.",ERR,ERROR,*999)
    ELSE
      IF(ASSOCIATED(SOLVER_EQUATIONS%SOLVER_MAPPING)) THEN
        !Initialise the boundary conditions
        CALL BOUNDARY_CONDITIONS_INITIALISE(SOLVER_EQUATIONS,ERR,ERROR,*999)
      ELSE
        LOCAL_ERROR="Solver equations solver mapping is not associated."
        CALL FlagError(LOCAL_ERROR,ERR,ERROR,*999)
      ENDIF
    ENDIF
  ENDIF

EXITS("BOUNDARY_CONDITIONS_CREATE_START")
RETURN
999 ERRORSEXITS("BOUNDARY_CONDITIONS_CREATE_START",ERR,ERROR)
RETURN 1
END SUBROUTINE BOUNDARY_CONDITIONS_CREATE_START
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-10-07 07:56:56

这是函数的备用返回的标签。函数最终可以返回的标签。

代码语言:javascript
复制
 return 1

而不是

代码语言:javascript
复制
return

返回到调用子例程的位置。

对于新代码来说,这个特性是非常不受欢迎的,尽管我已经看到了如何将此代码用于某种异常的建议。

非常相关的问题,几乎是重复的(要求返回语句):Fortran return statement

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46615930

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档