fortran的新功能:非数字字符错误
我得到了一堆错误“非数字字符在…”和“不可分类参数”。我是fortran新手,不知道发生了什么:fortran的新功能:非数字字符错误,fortran,Fortran,我得到了一堆错误“非数字字符在…”和“不可分类参数”。我是fortran新手,不知道发生了什么: program ex implicit none include 'support.f90' integer N integer info parameter(N=10) real*8 D0(0:N,0:N) integer intep(0:N) integer j,k integer np1 np1=N+1 do j=0,N do k=0,N D0(j,k)=(j+k)
program ex
implicit none
include 'support.f90'
integer N
integer info
parameter(N=10)
real*8 D0(0:N,0:N)
integer intep(0:N)
integer j,k
integer np1
np1=N+1
do j=0,N
do k=0,N
D0(j,k)=(j+k)
end do
end do
call dgefa(D0,np1,np1,intep,info)
write(*,*) info
write(*,*) intep
write(*,*) D0
stop
end
您应该显示实际的完整错误消息。我可以看到的一个错误是,在可执行语句(
np1=N+1
)之后有一些声明(integer j,k
)——这是不允许的,通常所有声明都必须首先出现。如果您的源代码是自由格式的,但您尝试以Fortran 77固定格式编译,则可能会看到此类错误。例如,如果使用.f命名文件,在许多编译器中都会出现这种情况。您还需要查看support.f90
中的内容<代码>D0对变量名的选择让我觉得非常可怕。。它将与do
和双精度指数混淆。support.f90包含从相应库中提取的LU分解函数dgefa。有人使用过它吗?如果它的函数代码没有包含在正确的位置。它应该在程序
之前或结束
之后。(我怀疑@tim18已经确定了当前错误的来源,但接下来您将看到语句出现问题)