目的
指定された記憶域を符号付き整数として解釈し、その整数の値を返します。
構文
INT(expression[,position[,length]])
パラメーター
expression は、スカラー式または連結記憶域への参照です。expression に配列、構造体、または名前付き定数を指定することはできません。position は、フィールドの最初のビット位置を指定する正の整数値です。length は、フィールドの長さを指定する 0 から 32 の範囲の正の整数値です。
例
DCL A BIT(32);
A = '12345678'B4;
PUT SKIP LIST(INT(A,5,4));
END TEST;
説明
INT 関数は、指定された記憶域を符号付き整数として解釈し、その整数の値を返します。変換は実行されないため、返される値は、指定した記憶域に格納されている変数のデータ型に依存します。
position を指定する場合、最小値は 1 で、最大値は、expression で指定した記憶域のビット長です。position を省略した場合のデフォルト値は 1 です。
length を指定する場合、最小値は 0 で、最大値は、expression で指定した記憶域のビット長から position の値を引いた値です。length を省略した場合のデフォルト値は、position で指定したビットから expression で指定した記憶域の末尾までのビット数になります。
position および length を指定しない場合は、expression で参照される記憶域の長さが 32 ビットに制限されます。
INT は Fixed Bin(31) 型の値を返します。フィールドの長さがゼロの場合はゼロを返します。
INT と POSINT は、POSINT が符号なし整数を返す以外は同じです。
この関数の結果は、使用しているハードウェアのネイティブのバイト順に依存します。そのため、異なるプラットフォームで同じように使用できるとは限りません。