Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, 言語解説書

POSITION 属性

POSITION 属性は、ストリング・オーバーレイ定義だけで使用でき、 定義済み変数の先頭になる基本変数内のビット、文字、グラフィック、 またはワイド文字を指定します。

POSITION 属性の式は、基本変数の先頭からの相対的な位置を指定します。 この式で指定する値は、1 から n の範囲内の値に することができます。ただし、n は次のように定義されます。

n = N(b) - N(d) + 1

ここで、N(b) は基本変数のビット、文字、グラフィック、または ワイド文字の数、N(d) は定義済み変数のビット、文字、グラフィック、 またはワイド文字の数です。

定義済み項目を参照するたびに、この式が計算され、整数値に変換されます。

POSITION 属性を省略すると、POSITION(1) と見なされます。

定義済み変数がビット・クラス集合である場合、以下の点に注意してください。

基本変数は、連結ストレージ内のデータを参照している必要があります。

例:

DCL C(10,10) BIT(1),
    X BIT(40) DEF C POS(20);

X は、C の 20 番目のエレメントから 40 個の エレメントで構成されるビット・ストリングです。

DCL E PIC'99V.999',
    Z1(6) CHAR(1) DEF (E),
    Z2 CHAR(3) DEF (E) POS(4),
    Z3(4) CHAR(1) DEF (E) POS(2);

Z1 は、10 進数字ピクチャー E のすべてのエレメントからなる文字ストリング配列です。 Z2 は、ピクチャー E のエレメント '999' からなる文字ストリングです。 Z3 は、ピクチャー E のエレメント '9.99' からなる文字ストリング配列です。

DCL A(20) CHAR(10),
    B(10) CHAR(5) DEF (A) POSITION(1);

B の最初の 50 文字は、A の最初の 50 文字からなります。POSITION(1) を明示的に 指定しなければなりません。 そうしない場合は、単純定義が使用され、結果は異なったものになります。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)