在此1977年前的fortran程序中,参数中的参数是什么意思?

时间:2019-04-29 21:20:37

标签: fortran gfortran fortran77

以下代码段是1975年左右发布的TOMS 494驱动程序的前几行。尽管第二个参数似乎可能是指磁带驱动器,但知道这些参数的含义会很有趣。该行似乎在gfortran 4.x中给出了错误

  PROGRAM BURGER(PDEOUT, TAPE3=PDEOUT)
  COMMON /MESH/ X(201)
  COMMON /COORD/ ICORD
  COMMON /SIZES/ NPDE,NPTS
  DIMENSION U(201)

编译输出:

   PROGRAM BURGER(PDEOUT, TAPE3=PDEOUT)
         1

错误:(1)处PROGRAM语句的格式无效

1 个答案:

答案 0 :(得分:2)

可以在CDC(CONTROL DATA CORPORATION)的本手册FORTRAN EXTENDED VERSION 4 USER'S GUIDE中找到

这是在调用/启动程序时传递要连接的文件名的方法。参见第7-3页(pdf 91)。

  

示例1

PROGRAM statement:
PROGRAM  FOIST  (INPUT,  OUTPUT,  TAPE3)
     

姓名电话声明:

LGO(FIRST, SECOND)
     

实际使用的文件名:

FIRST
SECOND
TAPE3

LGO(file1, file2)语句属于加载程序,如前几页所述,LGO是默认程序名称(与今天的a.out比较)。

name(p1,p2,...  ,pn) 
     

要加载的文件的逻辑文件名   并执行,或主程序的名称   加载并执行。   执行时间文件的备用文件名   名称替换。

     

...

     

文件名调用是最常用的调用,通常是   用于目标代码为   默认情况下写入文件LGO

INPUTOUTPUT文件是当今我们称为标准输入和输出的文件,已被READ *,PRINT *,等访问。像第1-3页(pdf 13)中的示例一样,TAPE3已连接到单元3,TAPE5已连接到单元5。

PROGRAM NEWTON (INPUT, OUTPUT, TAPE5=OUTPUT)
...
READ *, XO, EPS, ITMAX
...
WRITE (5,20) ITMAX

这些磁带实际代表什么是在Fortran之外进行控制的,并且也在手册中进行了解释。


因此,在现代,您可以通过其他一些特定于系统的方式将文件预连接到这些单元,或者使用OPEN()语句将外部文件连接到Fortran单元号。我们没有您的其余代码,因此我不建议您提供更多详细信息。