首页 > 解决方案 > status="old" 的 OPEN 语句创建一个新文件并挂起

问题描述

在剖析一些旧的 FORTRAN 77 代码时遇到文件处理问题。示例代码如下:

      WRITE(*,15)
15    FORMAT(' INPUT NAME OF DATA FILE TO BE USED AS INPUT ')
      READ(*,10)BDFILE
10    FORMAT(A10)
      OPEN(UNIT=2,ERR=999,FILE=BDFILE,STATUS='OLD',IOSTAT=IOS)
      REWIND 2

问题出在 OPEN 语句上。尽管 STATUS='OLD',但该语句正在创建一个新的空白文件,该文件会清除现有文件 - 然后它就挂在那里。

这是来自过去必须有效的代码,所以我有点困惑为什么它现在坏了。我的猜测之一是我正在使用的编译器?我找不到任何古老的 F77 编译器,只有与现代遗留兼容的编译器。我用 FTN95 编译了这个。

标签: fortranfortran77

解决方案


推荐阅读