IBM Extension
IBM Extension
ポインター・データ項目
ポインター・データ項目は、USAGE IS POINTER として明示的に定義された項目です。 そのように定義されなければ、ADDRESS OF データ項目または ADDRESS OF 特殊レジスターであり、それらは暗黙に USAGE IS POINTER として定義されています。
ポインター・データ項目を指定すると、EQUAL および NOT EQUAL だけが関係演算子として使用できます。 比較において使用される 2 つのアドレスがどちらも同じ保管場所にある場合、オペランドは等しくなります。
この比較条件は、IF、PERFORM、EVALUATE、および SEARCH 形式 1 のステートメントの中で認められています。 SEARCH 形式 2 (SEARCH ALL) ステートメントでは認められていません。 それは、ポインター・データ項目に適用できる、意味のある配列がないからです。
ADDRESS 比較 - 形式 >>-+-ADDRESS OF--ID-1-+--+----+--+-----+----------------> +-ID-2-------------+ '-IS-' '-NOT-' +-NULL-------------+ '-NULLS------------' >--+-EQUAL--+----+-+--+-ADDRESS OF--ID-3-+------------->< | '-TO-' | +-ID-4-------------+ '-=-------------' +-NULL-------------+ '-NULLS------------'
- ID-1、ID-3
- データ部セクションに定義されている任意のレベル項目 (レベル 66 と 88 を除く) を指定できます。
- ID-2、ID-4
- これは、USAGE IS POINTER として記述されていなければなりません。
- NULL(S)
- 他のオペランドが以下のいずれかであるときだけ使用できます。
- 使用法が POINTER である項目
- ADDRESS OF 項目
- ADDRESS OF 特殊レジスター
つまり、NULL=NULL は使用できません。
End of IBM Extension
