gpt4 book ai didi

fortran - Fortran 代码每一行末尾的 "suffix"语法是什么?

转载 作者:行者123 更新时间:2023-12-02 13:39:25 28 4
gpt4 key购买 nike

我最近继承了一个遗留的 Windows 二进制文件及其源代码,它显然是用 Fortran(我不熟悉的语言)编写的。为了了解它是如何工作的,我查看了源代码,这个语法引起了我的注意:

    DIMENSION X(10)                                                   ABC02340
C ABC02350
X(1)=9.876543D-2 ABC02360
X(2)=1.234567D-1 ABC02370
X(3)=2.587539D-0 ABC02380
X(4)=6.549873D-0 ABC02390
...

(为了保密起见,对上面的示例代码进行了一些调整)

源代码的大部分行都有 8 个字母的“后缀”,其中包括:

  • 三个字母的大写字母,所有行都相同
  • 5 位数字,每行增加 10(大多数情况下)或更多

它们(大部分)完全垂直对齐,占据大部分行的第 73-80 个字符。其中一些与代码一起被注释掉。我什至发现一些与右括号相邻的没有一个空格。

奇怪的是,我还没有找到带有这个“后缀”的Fortran代码示例。我尝试搜索一些关键字,例如“后缀”、“标签”、“行号”或“行尾”,但没有结果。到目前为止我发现它们既不是注释,也不是 GOTO 语句的标签。

问题:那些“后缀”是什么?这个语法的名称是什么?或者这只是原始开发人员的习惯,涉及一些预编译宏?

最佳答案

这是一个sequence number由于显而易见的原因,如今很少使用:

It was not uncommon for the programmer or the operator of the card reader to drop some or all of the cards on the floor, which usually put them out of order. The only insurance against this disaster was to punch a sequence number in columns 73-80 of each card, so that if they got scrambled they could ... be put back in order using a mechanical card sorter.
Classical Fortran

使用固定格式时,only the first 72 columns of each line are scanned .

关于fortran - Fortran 代码每一行末尾的 "suffix"语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50037488/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com