数组在12个元素之后没有编译?

时间:2017-06-23 14:45:26

标签: arrays fortran

我正在尝试创建一个数组,但如果数组中有超过12个元素,我的程序将无法编译。例如:

PROGRAM dprime
REAL, DIMENSION(12) :: array
array = (/50.0,52.0,54.0,56.0,58.0,60.0,62.0,64.0,66.0,68.0,70.0,72.0/)
END PROGRAM dprime

现在,如果我将其更改为DIMENSION(13)并在72.0,之后添加其他元素,则会出现以下错误:

  

错误#5082:语法错误,在期待一个时发现END-OF-STATEMENT   of:,(/:/)。

此代码无法编译:

PROGRAM dprime
REAL, DIMENSION(13) :: array
array =(/50.0,52.0,54.0,56.0,58.0,60.0,62.0,64.0,66.0,68.0,70.0,72.0,74.0/)
END PROGRAM

哪里可能有错误?

1 个答案:

答案 0 :(得分:1)

您可能超出允许的行长度。

对于gfortran,将选项-ffree-line-length-none添加到命令行。

编辑:

最有可能的做法是,只需将文件重命名为*.f90,即可设置大多数编译器,包括您正在使用的ifort。此策略有一个限制:超过132个字符,您必须在一行末尾使用带有字符&的延续行。