我必须使用一个可以更改行数的文件,该文件由于先前的操作(来自python脚本)而会更改行数,并且该行数将用于声明另一个变量,如下所示。
integer NumberOfLine !This is not work,Of course.
real(8) F(FixedDimension,NumberOfLine)
integer, parameter :: NewDimension = ANumber*NumberOfLine
如何正确声明NumberOfLine。谢谢。我可以从python传递行号,所以基本上我知道python操作完成后的行号
如果声明参数,则其值必须在编译时固定。因此,integer, parameter :: newDimension = ANumber * NumberOfLine
如果编译器不知道的值,则您将无法工作NumberOfLine
。
您可以做的是使用可分配数组:
program test_alloc
implicit none
integer, parameter :: dp = selected_real_kind(p=15)
real(kind=dp), dimension(:,:), allocatable :: F
integer :: i
integer, parameter :: FixedDimension = 10
print *, "Enter i"
read(*, *) i
allocate (a(FixedDimension, i))
a = i
print *, a
end program test_alloc
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句