【发布时间】:2015-03-04 12:39:38
【问题描述】:
我编写了一个科学的 fortran 代码,没有使用任何特定的 fortran 标准。但我现在必须声明我使用的是哪个 fortran 标准。
我说我使用的是 fortran 2003,因为我需要 get_command_argument 和 command_argument_count 内部函数。但是,当使用标志 -std=f2003 检查代码标准时,编译会失败。
我在某些部分收到关于实数类型声明的错误。例如当我在模块中声明变量时:
module innout
implicit none
real*8,parameter :: nan=-1.
real*8,allocatable,save :: windU(:),windV(:)
real*8,allocatable,save :: input_param(:,:),input_rad(:,:)
real*8,allocatable,save :: prein(:),input(:),ref_lev(:)
character(30),allocatable,save :: sceneclass(:)
end module innout
我在所有实变量中都收到消息“非标准类型声明 REAL*8”。
有人知道发生了什么吗?
【问题讨论】:
-
尝试改用
real64。 -
谢谢,但我认为这是 Fortran 2008
-
始终使用标签fortran 并且仅在必要时添加版本以区分您的问题是具体的。例如,您不能使用 Fortran 2008,而只能使用 Fortran 90。
标签: fortran standards variable-declaration fortran2003