SHAPE
— Determine the shape of an arrayRESULT = SHAPE(SOURCE [, KIND])
SOURCE | Shall be an array or scalar of any type.
If SOURCE is a pointer it must be associated and allocatable
arrays must be allocated.
|
KIND | (Optional) An INTEGER initialization
expression indicating the kind parameter of the result.
|
INTEGER
array of rank one with as many elements as SOURCE
has dimensions. The elements of the resulting array correspond to the extend
of SOURCE along the respective dimensions. If SOURCE is a scalar,
the result is the rank one array of size zero. If KIND is absent, the
return value has the default integer kind otherwise the specified kind.
PROGRAM test_shape INTEGER, DIMENSION(-1:1, -1:2) :: A WRITE(*,*) SHAPE(A) ! (/ 3, 4 /) WRITE(*,*) SIZE(SHAPE(42)) ! (/ /) END PROGRAM