Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Fortran中生成正确的数据语句?_Fortran - Fatal编程技术网

如何在Fortran中生成正确的数据语句?

如何在Fortran中生成正确的数据语句?,fortran,Fortran,我得到了以下信息: subroutine mindef(f) implicit real*8(a-h,o-z) real*8 r(6),com(3) data r/"en d", "irec","tion","prog","ress","ion "/, & & nl , ng , np/"l" , "g" , "p"/, "itra1","itra2"/"*" , " "/ 数据语句采用对象列表和值列表对,其中对象列表和值列表的形式为对象列表/值

我得到了以下信息:

  subroutine mindef(f)
  implicit real*8(a-h,o-z)
  real*8 r(6),com(3)    
 data r/"en d", "irec","tion","prog","ress","ion "/, &
   & nl , ng , np/"l" , "g" , "p"/, "itra1","itra2"/"*" , " "/  

数据语句采用对象列表和值列表对,其中对象列表和值列表的形式为
对象列表/值列表/
。要初始化的对象(不包括数据隐含dos的情况)必须是变量。对于问题的数据语句,在错误消息标记点附近违反了这一点

让我们看看问题的陈述:

fitold.f90:346:39:

        & nl , ng , np/"l" , "g" , "p"/, "itra1","itra2"/"*" , " "/
                                   1
Error: Syntax error in DATA statement at (1)
正如我们现在看到的,我们有编译器希望看到对象名的字符文本



正如tim18所评论的,即使是这种修正也不会使代码片段成为标准Fortran。有些编译器接受字符值来初始化/赋值给实值(和
real*8
),但这不是通用的。

维护40多年前的IBM360风格的非标准Fortran太困难了,特别是当您将其与后来标准的自由格式源格式结合使用时。您可能希望将r和c显式声明为字符串;作为测试的第一步,您可以使用字符数组(len=8)。
  data r / "en d", "irec","tion","prog","ress","ion "  / , &
!      ^ ^ '----------------------------------------'  ^ ^
!      | |                    '- value list            | '- pair separator
!      | '- separator                                  '- separator       
!      '- variable name
     & nl , ng , np   /  "l" , "g" , "p"   / , "itra1","itra2"  /"*" , " "/
!      '-----------'  ^  '--------------'  ^ ^ '--------------'
!          '- object  |        '- value    | |       '- NOT VARIABLES!
!              list   |            list    | '- pair separator
!                     '- separator         '- separator