0

快速提问。我有一个带有变量声明的 fortran77 子例程

DIMENSIONS HH(13, 1000)

我假设由于没有指定类型,所以这个变量是一个整数数组。稍后在程序中我有一个循环,其中有以下行:

HH(2,N) = HH(4,N) + W2

W2 没有在子例程中显式声明,也没有作为参数传递。我假设它是默认类型作为实变量。

我猜对于上面的命令,W2 在添加到 HH(4,N) 之前会转换为整数。它是否正确?

抱歉,如果这真的很基本。

4

1 回答 1

2

在 Fortran 77 中,以 I、J、K、L、M 或 N 开头的变量是隐含的INTEGER,除非另有定义。所有其他变量都是隐式的REAL。这意味着您的数组 HH 是REAL. 所以结果

HH(2,N) = HH(4,N) + W2

REAL不涉及隐式转换。

于 2012-01-06T05:35:17.763 回答