Fortran中的变量类型

时间:2012-08-02 21:20:29

标签: variables fortran

我有一段Fortran代码,而我的Fortran编辑器(Force 2.0.9)无法理解该代码中的以下行。

real(kr8) :: rnum

我找不到任何有关此类变量声明的内容。 (kr8)是什么意思?如果有人能向我解释,我真的很感激吗?

2 个答案:

答案 0 :(得分:6)

这是以下内容的缩写:

real(kind=kr8) :: rnum

在这种情况下,变量或参数kr8在代码的其他地方指定 - 如果在同一过程中,则在此行上方,或者如果通过模块访问,则在不同的文件中。从名称的角度来看,可以假设kr8以某种特定编译器具有双精度浮点数(大小为8字节)的方式定义。

请参阅Fortran编译器文档,了解kind参数对于各种精度以及整数和实数变量范围可以采用的值。如果您使用force,则编译器是gfortran,g95或g77。 kind参数是Fortran 90中引入的一个特性,如果您的编译器是g77,则可能无法使用此参数进行编译。

对此SO问题的回答也很有用:Fortran 90 kind parameter

答案 1 :(得分:2)

以下是关于在Fortran> = 90:Fortran: integer*4 vs integer(4) vs integer(kind=4)中声明变量的几种方法的前一个答案。另请参阅Extended double precision 了解如何使用实变量。