声明和遍历数组时编译错误

时间:2018-11-17 18:16:50

标签: fortran

能否请您帮助我了解此Fortran代码中的错误?

sizeof(usario)

1 个答案:

答案 0 :(得分:2)

此代码段中存在3个主要错误:

  1. 您正在将变量i声明为real,但尝试将其用作另一个变量的维数和do循环的索引-包含两个上下文integer类型变量是必需的。

  2. 在主程序范围内声明固定大小的数组时,必须在编译时知道其形状。相反,您指的是另一个变量i,其变量在编译时未知。如果您知道数组的大小为100,则将其声明为j(100)。如果您不想在任何地方对大小进行硬编码,请声明一个常量并引用它。

赞:

integer, parameter :: n = 100
real :: j(n)

否则,如果您在编译时不知道形状,并希望在每次程序运行时确定形状,请使用动态数组(网络上的更多信息,例如here)。

  1. 自20年前以来,pause语句已从该语言中删除。