我对 Fortran 语言知之甚少。我遇到了一些用90年代编写的程序(参见附图中仅显示长脚本的一部分)。
我想知道哪种编译器适合执行这些代码?我在我的mac上安装了gfortran-4.2.3。我也不确定所附代码中的缩进:如果 C (注释)位于第1列,主代码是从第9列还是第7列开始?那些被置于 GO TO 之间的数字的位置怎么样?
答案 0 :(得分:1)
这不是Fortran 90.这是Fortran 77。
也就是说,gfortran
能够编译此代码。确保该文件的文件扩展名为.f
,以便gfortran
能够识别它的固定格式。
C
需要位于第一列,您引用的数字是标签,它们可以位于第1列和第5列之间。第198行的星号是一个连续字符,这意味着应该对此进行处理作为上一行的一部分。它必须在第6列中。其他所有内容都需要在第7列和第72列(包括第7列)之间
哦,最开头的3位数字是行号,一定不能在源代码中。
编辑添加:因为无论如何你必须再次输入它,你也可以自由形式:
将第一列中的C
替换为!
,并更改标记延续线的方式:转到此处:
write (*, *) "This is some long text,
* which doesn't fit into a line"
进入这个:
write(*, *) "This is some long text, " // &
"which doesn't fit into a line"
其他一切都可以保持原状。 (你现在也可以使用适当的缩进!)
新修改
所以你已经粘贴了你编写的代码和错误消息,所以我现在回复了。
在固定表格中,忽略第72列以后的任何字符。你有几行长字符串,其中终止引号位于该被忽略的区域。
确保没有线超过第72行。