【问题标题】:gfortran Error: Function 'inint' at (1) has no IMPLICIT typegfortran 错误:(1) 处的函数“inint”没有隐式类型
【发布时间】:2014-10-05 09:25:45
【问题描述】:

我正在使用gfortran(来自gcc-4.8.1)编译.f90源文件,并遇到错误提示:

Error: Function 'inint' at (1) has no IMPLICIT type

我做了一些搜索,发现 GNU website 说 [ININT]

此内在函数尚未实现。但是,该名称是保留的 作为内在的。

SGI documentation,据说

ININT 返回与其 REAL*4 参数最接近的 INTEGER*2。

我的问题是:

ININT 是 Fortran77/90/95/2003 标准函数吗?

gfortran 中,为INIT 编写替换函数的正确/符合标准的方法是什么?

【问题讨论】:

  • 绝对不标准。

标签: fortran gfortran


【解决方案1】:

我以前从未使用过ININT,它可能没有任何标准。相反,我建议使用 NINT (FORTRAN 77),它采用可选的 KIND 参数 (Fortran 90):

RESULT = NINT(A [, KIND]) 

(取自the GCC docs

选择KIND 以反映INTEGER*2,无论它适用于您的特定编译器...但是当您使用它时,请尝试SELECTED_INT_KIND

【讨论】:

  • +1 谢谢,我用 NINT() 没有那种,到目前为止看起来还可以。
猜你喜欢
  • 1970-01-01
  • 2021-11-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多