假设我有两个名为modA和modB的Fortran模块.有没有办法在基于条件语句的程序中使用其中一个?这需要某种类型的预处理吗?例如,我希望能够执行以下代码:
if (condition)
use modA
else
use modB
end
Run Code Online (Sandbox Code Playgroud)
我正在使用GNU Fortran编译器.
给出以下代码:
integer, parameter :: n = 10000
integer, parameter :: m = 3
real, dimension(:,:), allocatable :: arr
! First way
allocate(arr(n,m))
! Second way
allocate(arr(m,n))
Run Code Online (Sandbox Code Playgroud)
arr当两个维度(第一种方式或第二种方式)存在巨大差异时,分配的"最佳"方式是什么?它是否重要,或者它是否强烈依赖于如何arr使用?