Gfortran:使用实数作为数组索引 [英] gfortran: using real numbers as array indices
本文介绍了Gfortran:使用实数作为数组索引的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在使用gfortran编译时,是否可以使用实数作为迭代器和数组索引?以下是一些示例代码:
program test
real i
real testarray(5)
testarray = 0.
do i=1,5
write(*,*) testarray(i)
end do
end program
我想运行一些不是我编写的代码。它在Windows上用英特尔编译器编译得很好,但我想在Linux上用gfortran编译器编译并运行它。我当前使用实数作为数组索引并执行循环迭代器时遇到错误。
谢谢!
推荐答案
如果您不想看到警告,请尝试--std=Legacy。否则就是"gnu",正如前面所说的。Gfortran手册说明:
作为扩展,GNU Fortran允许使用实数表达式或 变量作为数组索引。
和
Std的缺省值是‘gnu’,它指定 Fortran 95标准,包括支持的所有扩展 GNU Fortran,尽管会对过时的扩展发出警告 不建议在新代码中使用。"遗留"值是等效的 但没有过时扩展的警告,可能会有用 用于旧的非标准程序。
使用实数变量作为循环索引已从Fortran 95的语言标准中删除。由于使用它的遗留代码很多,因此它可能会在编译器中保留数十年。
这篇关于Gfortran:使用实数作为数组索引的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文