POINTERADD は、その引数の和であるポインター値を戻します。
|
省略形: PTRADD
POINTERADD は、基底付き変数のロケーターとして使用できます。
POINTERADD は、減算されるオペランドの接頭部に負符号 (-) を付けることにより、減算に使用できます。
ポインターを増分するために、POINTERADD を使用する必要はありません。 整数の場合と同じようにポインターを増分させるだけです。例えば、以下のように書き込む必要はありません。
p = pointeradd(p,2);
その代わりに、以下の同等ステートメントのどちらか 1 つを書き込むことができます。
p = p + 2;
p += 2;
しかし、POINTERADD は、以下の例にあるように、 ポインターのロケーション・オフセットでのストレージ参照を取り消す際に便利です。
dcl x fixed bin(31), b based fixed bin(31);
x = pointeradd(p,2)->b;
PL/I のロケーターは参照でなければならないため、書き込みが できないことにご注意ください。
x = (p + 2)->b;