在Fortran中,二维数组以列主格式存储,例如:
integer, allocatable, dimension(:,:)::A
allocate(A(3,4))
Run Code Online (Sandbox Code Playgroud)
数组"A"将作为A(1,1),A(2,1),A(3,1),A(1,2),A(2,2),A(3,2)存储在存储器中),... 等等.
但是当我有一个派生数据类型时会发生什么,例如:
type :: innerdata
integer :: i
real :: j
end type innerdata
type(innerdata), allocatable, dimension(:,:) :: A
allocate(A(3,4))
Run Code Online (Sandbox Code Playgroud)
数组"A"现在如何存储在内存中?谢谢!