我在编译我的一个 Fortran 代码时遇到了这个错误消息。我发现了一些关于相同错误的类似帖子,但这些帖子中的情况都不适用于我的情况。我将不胜感激这里提供的任何答案或帮助。提前致谢!
(代码真的很长,所以我只删掉了那些相关的句子。)
==================================================== =
DIMENSION A(20), COORDS(3)
REAL B, C, X, Y, Z
B = 1.0
X = COORDS(1)
Y = COORDS(2)
Z = COORDS(3)
DO I = 1,3
A(I) = COORDS(I)
END DO
C = SQRT ( X**2.0 + Y**2.0 ) + B
==================================================== =
错误消息指向最后一行:
错误 #6366:数组表达式的形状不符合。[ C
]
如果我注释掉+ B
,则不会发生错误。
我只是不明白。数组的元素COORDS
被传递给标量变量X, Y, Z
。为什么它们和B
(或C
)不相容?
我知道对于 Fortran 数组,一定有一些我不太了解的地方。如果您发现任何错误,请指出我的错误。
非常感谢!
贾斯汀