【发布时间】:2013-04-12 06:25:00
【问题描述】:
是否可以在子程序中分配公共数组的大小和值,然后在程序的其他子程序中使用它?
以下程序不起作用,但我想做这样的事情:
main.f
program main
integer n
integer, allocatable :: co(:)
common n, co
call assign
print *, co(1), co(2)
deallocate(co)
stop
end program main
assign.f
subroutine assign
integer n
integer, allocatable :: co(:)
common n, co
n = 2
allocate(co(n))
co(1) = 1
co(2) = 2
return
end subroutine assign
【问题讨论】:
-
最好忘记
common、block data和equivalence之类的内容。至少对于初学者来说。