4个回答
展开全部
用在ALLOCATABLE ARRAY 或 POINTER上.
POINTER是在SOBROUTINE里面ALLOCATE一个ARRAY后回MAIN PROGRAM的时候不会自动消失的VARIABLE.因为一个INTENT ARRAY不能在SUBROUTINE里面ALLOCATE, 所以只能用POINTER
用在ALLOCATABLE ARRAY上.
program main
real(8), allocatable::ning(:,:)
integer:: ji
allocate(ning(3,4), stat=ji)
if (ji>0) 'error' stop
end program
------------------------------------------------
------------------------------------------------
用在POINTER
subroutine ()
!local variables-----------
real(8), pointer:: ning(:,:)
allocate(ning(2,3))
POINTER是在SOBROUTINE里面ALLOCATE一个ARRAY后回MAIN PROGRAM的时候不会自动消失的VARIABLE.因为一个INTENT ARRAY不能在SUBROUTINE里面ALLOCATE, 所以只能用POINTER
用在ALLOCATABLE ARRAY上.
program main
real(8), allocatable::ning(:,:)
integer:: ji
allocate(ning(3,4), stat=ji)
if (ji>0) 'error' stop
end program
------------------------------------------------
------------------------------------------------
用在POINTER
subroutine ()
!local variables-----------
real(8), pointer:: ning(:,:)
allocate(ning(2,3))
展开全部
比如你前面定义了一个数组real,allocatable::a()
后面你要把a分配成有5个元素的数组allocate(a(5))
后面你要把a分配成有5个元素的数组allocate(a(5))
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
eg::
integer::i
integer,allocatable::a(:) !声明一个可变大小的一维数组
read(*,*)i
allocate(a(i))
integer::i
integer,allocatable::a(:) !声明一个可变大小的一维数组
read(*,*)i
allocate(a(i))
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
program main
real(kind=8),allocatable::a()
integer::i
i=10
allocate(a(i))
a=10
write(*,*) a
end program main
没有调试。你试试。
real(kind=8),allocatable::a()
integer::i
i=10
allocate(a(i))
a=10
write(*,*) a
end program main
没有调试。你试试。
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询