我目前正在更新一些舊的F77固定格式代碼並用gfortan編譯。gfortran:強制靜態內存分配
有沒有辦法在我使用時獲得警告而不是使用靜態內存分配,例如,如果我調用子例程並傳遞一些在運行時不固定的維度值?或者我會不得不使用舊的f77編譯器?
編輯:
下面是一些代碼例如:
program test
integer A,b
read(*,*) b
select case(b)
case(50)
A=40
case(40)
A = 50
end select
call arr(A)
end
subroutine arr(A)
integer A
double precision E(A,A)
E(1,1) =10.
E(42,41)= 41
write(*,*) E(42,41), A
end
很多人都需要這個,所以很難找到它。你有60年代的電腦嗎? – 2014-11-24 12:33:43
請參閱評論在http://stackoverflow.com/questions/17004270/strict-fortran77-compiler-or-gfortran-compiler-flag – 2014-11-24 12:35:02
你能展示一個你想趕上的代碼的例子 – agentp 2014-11-24 12:44:02