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

共用体の初期設定

共用体メンバーは、初期値を持つことができます。 ただし、共用体が静的である場合、INITIAL 属性を持つことができる共用体のメンバーは 1 つだけです。 共用体が静的でない場合、INITIAL 属性は指定された順に適用されます。 後続の初期値は、その前の値を重ね書きします。

次の例では、NT1 の宣言は、これが静的ストレージ属性を持つ場合は無効になります。

  dcl
    1 NT1 union automatic,
      2 Numeric_translate_table1 char(256)
                     init( (256)'00'X),
      2 *,
        3 * char(240),
        3 * char(10) init('0123456789'),
      2 * char(0);
 
  dcl
    1 NT2 union static,
      2 Numeric_translate_table2 char(256),
      2 *,
        3 * char(        rank('0')    )
            init((1)(low(rank('0'))) ),
        3 * char(10) init('0123456789'),
        3 * char(         (256-(rank('0'))-10)    )
            init((1)(low( (256-(rank('0'))-10) )) ),

NT2 の宣言は、これが静的ストレージ・クラスを持っていても有効です。 さらに、NT2 宣言は、EBCDIC の実行モードと ASCII の実行モードの間で移植性があります。


Terms of use | Feedback

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