如何在Fortran 95中包含来自不同文件的模块?

时间:2013-03-21 16:33:28

标签: fortran fortran95 silverfrost-fortran

我认为这个问题很明显,虽然我用Google搜索,但我找不到任何解决方案。我想划分我的源代码以使其更易于维护。如何引用另一个文件中的模块?

1 个答案:

答案 0 :(得分:5)

我认为您正在寻找use声明。例如,您可能有一个包含模块定义的源文件,大纲:

module abstract_types
    implicit none
    ! declarations
  contains
    ! procedure definitions
end module abstract_types 

然后,在另一个源文件中,使用该模块的程序,概述:

program hello_there
    use abstract_types
    implicit none
    ! declarations
    ! executable statements
end program hello_there

注意:

  • use语句之前的任何implicit语句。

  • use语句按名称引用模块。

编译时,请确保在程序源文件之前编译模块源文件;在编译时(不在链接时),编译器将查找模块文件(通常称为mod文件)以满足use语句中对模块的引用。 mod文件有点像头文件,但它是由编译器创建的。

稍后,当您链接程序时,您将需要模块和程序的目标文件。