gpt4 book ai didi

fortran - gfortran:使用实数作为数组索引

转载 作者:行者123 更新时间:2023-12-02 11:03:16 31 4
gpt4 key购买 nike

使用 gfortran 编译时是否可以使用实数作为迭代器和数组索引?这是一些示例代码:

program test
real i
real testarray(5)
testarray = 0.
do i=1,5
write(*,*) testarray(i)
end do
end program

我想运行一些我没有编写的代码。它在 Windows 上使用 intel 编译器编译得很好,但我想在 Linux 上使用 gfortran 编译器编译并运行它。我目前在使用实数作为数组索引和循环迭代器时遇到错误。

谢谢!

最佳答案

为什么要使用实数作为数组和循环索引?

如果您需要使用索引的实际值,请执行以下操作:

program test
integer i
real testarray(5)
testarray = 0.

do i=1,5
testarray(i) = REAL(i)
end do
end program

当然,如果需要的话,你可以走另一个方向,

integer j 
do j = 1, INTEGER(testarray(1))
...
end do
例如。该标准不允许非整数索引。它们也没有意义——数组中的 1.5 索引是多少?

看起来真正的数组索引是 extension如果您使用 --std=gnu 进行编译,这应该是可能的。但对此的支持可能并不总是存在,因为它不是标准的一部分。

关于fortran - gfortran:使用实数作为数组索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13939935/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com