我正在尝试为fortran 90程序创建一个模块。该文件名为epath.f90。当我尝试通过commad f95 -c epath.f90对文件运行仅对象编译来创建文件epath.mod时,它给出了以下错误消息:
epath.f90:1:
MODULE euler-path
1
Error: Unclassifiable statement at (1)
epath.f90:8.3:
END MODULE euler-path
1
Error: Expecting END PROGRAM statement at (1)
Error: Unexpected end of file in 'epath.f90'
epath.f90的代码是:
MODULE euler-path
INTEGER, PARAMETER :: NSTEPS=10
REAL, PARAMETER :: A=0.0, B=1.0, YSTART=0.0
REAL, DIMENSION(0:NSTEPS) :: x,y
END MODULE euler-path
我为另一个模块采取了相同的步骤,它工作正常。任何帮助表示赞赏。
答案 0 :(得分:2)
在Fortran中,名称 - 模块名称,变量名称等 - 必须以字母开头,并且只包含字母,数字或下划线。 (Fortran特别禁止在名称中使用特殊字符,如运算符,例如-/+/*/(/)
,因为它在历史上采用了一种非常有效的方法来使用空格,或者对于明确定义的变量名称,这将使得它很难区分a-b
作为名称和表达式a - b
。)参见,例如recent Fortran standard的第3.2.2节(“名称”)。
所以euler_path
没问题,euler_path123
没问题,但euler-path
没有。