POINTER 関数

目的

領域内の基底付き変数の生成を指定するポインター値を返します。

構文

POINTER(o,a)

省略形:POINTER は PTR。

パラメーター

o は、a で識別される領域内の基底付き変数の生成を指定するオフセット参照です。

説明

o が Null オフセット値の場合、POINTER 関数は Null ポインター値を返します。それ以外の場合、o の値は、領域内の基底付き変数の割り当てのオフセットである必要があります。ただし、必ずしも a 内である必要はありません。

POINTER 関数によって返される結果は、オフセット値 o と領域 a の先頭アドレスの合計です。

DECLARE (A, B) AREA;
DECLARE (A1, A2) CHAR(20) BASED; 
DECLARE (P1, P2) POINTER;
DECLARE (O1, O2) OFFSET;

ALLOCATE A1 IN(A) SET(O1);
ALLOCATE A2 IN(A) SET(O2);

B = A;                  /* assign area */

P1 = POINTER(O1, B);    /* address of A1 in B */
P2 = POINTER(O2, B);    /* address of A2 in B */

制約事項

なし。