Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, プログラミング・ガイド

ストリング記述子

ストリング記述子では、ヘッダーの 2 番目のバイトがストリング・タイプ (ビット、文字、またはグラフィックのほかに、非可変、可変、または可変 z) を表します。

非可変ビット・ストリングのストリング記述子では、 ヘッダーの 3 番目のバイトがビット・オフセットを表します。

CHARACTER ストリングのストリング記述子では、ヘッダーの 3 番目のバイトは、コンパイラー CODEPAGE オプションをエンコードします。

可変ストリングのストリング記述子では、4 番目のバイトに、ストリング長がネイティブ以外のフォーマットで保持されるかどうかを表すビットが含まれます。

文字ストリングのストリング記述子でも、4 番目のバイトに、ストリング・データが EBCDIC であるかどうかを表すビットが含まれます。

ストリング記述子の宣言は次のとおりです。

declare
  1 dsc_String  based( sysnull() ),
    2 dsc_String_Header,
      3 *                     fixed bin(8) unsigned,
      3 dsc_String_Type       fixed bin(8) unsigned,
      3 * union,
        4 dsc_String_Codepage ordinal ccs_Codepage_Enum,
        4 dsc_String_BitOfs   fixed bin(8) unsigned,
      3 *,
        4 dsc_String_Has_Nonnative_Len    bit(1),
        4 dsc_String_Is_Ebcdic            bit(1),
        4 dsc_String_Has_Nonnative_Data   bit(1),
        4 *                               bit(5),
    2 dsc_String_Length   fixed bin(31); /* max length of string */

dsc_String_Type フィールドに指定できる値は次のとおりです。

declare
  dsc_String_Type_Unset                fixed bin(8) value(0),
  dsc_String_Type_Char_Nonvarying      fixed bin(8) value(2),
  dsc_String_Type_Char_Varyingz        fixed bin(8) value(3),
  dsc_String_Type_Char_Varying2        fixed bin(8) value(4),
  dsc_String_Type_Bit_Nonvarying       fixed bin(8) value(6),
  dsc_String_Type_Bit_Varying2         fixed bin(8) value(7),
  dsc_String_Type_Graphic_Nonvarying   fixed bin(8) value(9),
  dsc_String_Type_Graphic_Varyingz     fixed bin(8) value(10),
  dsc_String_Type_Graphic_Varying2     fixed bin(8) value(11),
  dsc_String_Type_Widechar_Nonvarying  fixed bin(8) value(13),
  dsc_String_Type_Widechar_Varyingz    fixed bin(8) value(14),
  dsc_String_Type_Widechar_Varying2    fixed bin(8) value(15);

Terms of use | Feedback

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