+----------------------------------IBM 拡張----------------------------------+

SIZEOF(A)

目的

引き数のサイズをバイト単位で戻します。

クラス

照会関数

引き数の型と属性

A
以下のいずれにも当てはまらないデータ・オブジェクト。

SIZEOF はサブプログラムに引き数として渡すことはできません。

結果の値と属性

デフォルトの整数スカラー

結果の値

引き数のサイズ (バイト単位)。

以下の例では、-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

上記のプログラムで生成される出力例は次のとおりです。

    40   4   8
    16   8
     4  10
    40  40

関連情報

-qintsize コンパイラー・オプションの詳細については、「XL Fortran ユーザーズ・ガイド」を参照してください。

+------------------------------End of IBM 拡張-------------------------------+

IBM Copyright 2003