3 fortran
这是我在 SO 上找到的帖子的后续内容:Difference Betweenintent(out) andintent(inout)
链接的问题通过询问无效程序来询问Fortranintent(out)和之间的区别。intent(inout)
任何人都可以想出一个简单有效的程序,通过更改intent(inout)为intent(out)或反之亦然来给出不同的结果?
干得好...
program intent_test
implicit none
integer, allocatable :: a(:)
a = [1,2,3,4,5]
call intent_inout (a)
call intent_out (a)
contains
subroutine intent_inout (a)
integer, allocatable, intent(inout) :: a(:)
if (allocated(a)) then
print *, a
else
print *, "Unallocated"
end if
end subroutine intent_inout
subroutine intent_out (a)
integer, allocatable, intent(out) :: a(:)
if (allocated(a)) then
print *, a
else
print *, "Unallocated"
end if
end subroutine intent_out
end program intent_test
Run Code Online (Sandbox Code Playgroud)
1 2 3 4 5
Unallocated