+-------------------------------IBM Extension--------------------------------+
Returns the size of an argument in bytes.
SIZEOF must not be passed as an argument to a subprogram.
Class
Inquiry function
Result Type and Attributes
Default integer scalar.
Result Value
The size of the argument in bytes.
Examples
The following example assumes that -qintsize=4.
INTEGER ARRAY(10) INTEGER*8, PARAMETER :: p = 8 STRUCTURE /STR/ INTEGER I COMPLEX C END STRUCTURE RECORD /STR/ R CHARACTER*10 C TYPE DTYPE INTEGER ARRAY(10) END TYPE TYPE (DTYPE) DOBJ PRINT *, SIZEOF(ARRAY), SIZEOF (ARRAY(3)), SIZEOF(P) ! Array, array ! element ref, ! named constant PRINT *, SIZEOF (R), SIZEOF(R.C) ! record structure ! entity, record ! structure ! component PRINT *, SIZEOF (C(2:5)), SIZEOF(C) ! character ! substring, ! character ! variable PRINT *, SIZEOF (DOBJ), SIZEOF(DOBJ%ARRAY) ! derived type ! object, structure ! component
The following is sample output generated by the program above:
40 4 8 16 8 4 10 40 40
Related Information
See the User's Guide for details about -qintsize compiler option.
+----------------------------End of IBM Extension----------------------------+