参照される変数に割り当てられたバイト数を示す Fixed Bin(31) の値を返します。
STORAGE(reference)
省略形:STORAGE は STG
reference は変数です。
DCL A FIXED BIN(15); DCL 1 FOO, 2 AB FIXED BIN(15), 2 F001, 5 A0 CHAR(12), 5 A2 FIXED BIN(31), 5 A1 CHAR(5) VARYING, 2 ABC CHAR(4); PUT SKIP LIST('Should see 2 ->',SIZE (A)); PUT SKIP LIST('Should see 2 ->',STG (A)); PUT SKIP LIST('Should see 23 ->',STG (F001)); PUT SKIP;
なし。
説明
STORAGE 関数は、参照される変数に割り当てられたバイト数を示す Fixed Bin(31) の整数を返します。変数には、スカラー、配列、配列要素、構造体、または構造体のメンバーを指定できます。
個々の配列要素を参照する場合、配列全体のサイズではなく、配列の要素のサイズが返されます。変数がビット文字列で整数のバイト数にならない場合、返される値は次のバイトに切り上げられます。
変数が文字可変型の場合、変数はテキスト フィールドと長さフィールドの 2 つの部分で構成されます。長さフィールドに常に 2 バイトが使用されるため、STORAGE は、宣言されているテキスト フィールドの長さに 2 を加えた値を返します。
変数が領域の場合、STORAGE は領域の最大サイズに領域ヘッダーのサイズを加えた値を返します。
データ記憶域の詳細については、『Open PL/I ユーザー ガイド』を参照してください。