IS_CONTIGUOUS tests whether an array is contiguous.
Fortran 2008 and later
Inquiry function
RESULT = IS_CONTIGUOUS(ARRAY)
| ARRAY | Shall be an array of any type. |
Returns a LOGICAL of the default kind, which .TRUE. if ARRAY is contiguous and false otherwise.
program test
integer :: a(10)
a = [1,2,3,4,5,6,7,8,9,10]
call sub (a) ! every element, is contiguous
call sub (a(::2)) ! every other element, is noncontiguous
contains
subroutine sub (x)
integer :: x(:)
if (is_contiguous (x)) then
write (*,*) 'X is contiguous'
else
write (*,*) 'X is not contiguous'
end if
end subroutine sub
end program test
© Free Software Foundation
Licensed under the GNU Free Documentation License, Version 1.3.
https://gcc.gnu.org/onlinedocs/gcc-10.2.0/gfortran/IS_005fCONTIGUOUS.html