【发布时间】:2015-03-02 13:00:10
【问题描述】:
我正在使用旧的 Fortran 代码,并且在旧操作系统中使用 g77-3.3 运行它。由于这个版本的编译器不再随大多数 Linux 发行版一起提供,我尝试使用 gfortran (4.9.2),我正面临这个小问题。
此代码使用临时文件。它写入此文件,然后在某个时刻将文件的状态更改为暂存,如下例所示:
PROGRAM testopenfile
IMPLICIT NONE
WRITE(8,*)'fdsasfd'
OPEN(8,STATUS='SCRATCH')
CLOSE(8)
END PROGRAM
这段代码适用于 g77 编译器,但是当我使用 gfortran 运行它时,我收到以下消息:
At line 4 of file testopenfile.f (unit = 8, file = 'fort.8')
Fortran runtime error: Cannot change STATUS paramter in OPEN statement.
这种设置临时文件的方式在 gfortran 中是否发生了变化?难道我做错了什么?这可能是这个版本的 gfortran 的错误吗?
【问题讨论】:
-
我已经更改了代码的缩进,因为我猜你的意思是它是固定格式的(g77,它在原始代码的第 7 列中)。如果这不是您想要的,请随时改回来。