SIZEOF
— Size in bytes of an expressionSIZEOF(X)
calculates the number of bytes of storage the
expression X
occupies.
N = SIZEOF(X)
X | The argument shall be of any type, rank or shape.
|
POINTER
attribute, the number of bytes of the storage area pointed
to is returned. If the argument is of a derived type with POINTER
or ALLOCATABLE
components, the return value does not account for
the sizes of the data pointed to by these components. If the argument is
polymorphic, the size according to the declared type is returned. The argument
may not be a procedure or procedure pointer.
integer :: i real :: r, s(5) print *, (sizeof(s)/sizeof(r) == 5) end
The example will print .TRUE.
unless you are using a platform
where default REAL
variables are unusually padded.