子程序名称 Fortran 名称

Posted

技术标签:

【中文标题】子程序名称 Fortran 名称【英文标题】:Subroutine Name Fortran Name 【发布时间】:2015-06-22 15:33:24 【问题描述】:

我有一个存储子程序名称的变量。有没有办法我可以使用“调用[变量]”来调用子例程。

我有几个子程序(示例名称:X_1、X_2、X_3 等),用户提供数字(1、2、3 等),然后代码应该操作与数字相关的子程序。

【问题讨论】:

【参考方案1】:

编译器无法自动执行此操作。您必须准备一个表格来存储应该选择的数字或名称,然后调用正确的子程序。

之后,您可以使用 select case 构造选择正确的函数。

select case (n)
  case (1)
    call subroutine_1
  case (2)
    call subroutine_2
end select

select case (name)
  case ("subroutine_1")
    call subroutine_1
  case ("subroutine_2")
    call subroutine_2
end select

您还可以使用带有函数指针的表。所需的工作量将相似。

【讨论】:

谢谢,解决了我的问题

以上是关于子程序名称 Fortran 名称的主要内容,如果未能解决你的问题,请参考以下文章

从 Fortran 调用 C 函数,其中 C 函数名称最初是从 C 传入的

使用Fortran共享库时名称不匹配

Fortran编程(基础语法)——笔记3

Fortran编程(基础语法)——笔记3

fortran如何在一个module中调用其他module的变量?

使用宏的 Fortran 替换子例程名称