ANS85 

LENGTH 関数

LENGTH 関数は、引数の字類に応じて、英数字ENTMF 、各国文字、または UTF-8 の文字位置での引数の長さに等しい整数を返す。

この関数の型は整数である。

一般形式


*

引数

  1. argument-1 は、英数字

    ENTMF 、各国文字、または UTF-8 1

    定数でも、任意の字類または項類のデータ項目でもよい。
  2. argument-1 またはそれに属するデータ項目に、OCCURS 句の DEPENDING が指定されている場合、DEPENDING で指定されたデータ名が参照するデータ項目の内容が、LENGTH 関数が評価される時点で使用される。

戻り値

  1. argument-1 が、英数字定数、各国文字以外の字類の基本データ項目、または可変反復データ項目を含まない集団データ項目である場合、戻り値は英数字文字位置での argument-1 の長さに等しい整数となる。

    MF argument-1 が、字類が各国文字である基本データ項目または各国文字定数である場合、戻り値は各国文字位置での argument-1 の長さに等しい整数となる。

  2. argument-1 が可変反復データ項目を含む集団データ項目である場合、その可変反復データ項目の OCCURS 句の DEPENDING 指定で指定するデータ項目の評価結果の整数値が戻り値となる。この評価は、送信側データ項目としてデータ項目を処理する OCCURS 句の規則に従って行われる。「データ部 - ファイル記述項およびデータ記述項」の章の「OCCURS 句」セクションを参照。
  3. 戻り値には、暗黙の FILLER 文字 (ある場合) が含まれる。
  4. ENTMF argument-1 が UTF-8 定数であるか、用途が UTF-8 の基本データ項目である場合、戻り値は UTF-8 文字位置での argument-1 の長さを示す。たとえば、argument-1 が PIC U(n) として定義されている場合、戻り値は常に n となる。これは、引数の記憶域のサイズが 4*n バイトである場合にも適用され、項目によって使用される実際のバイト数は項目内の実際のデータによって異なる。
  5. ENTMF argument-1 が UTF-8 集団項目であるか、BYTE-LENGTH 句を含む UTF-8 基本項目である場合、戻り値は UTF-8 文字位置での argument-1 の長さを示す。文字長は、項目または集団内のデータを調べることによって実行時に計算される。argument-1 が集団であり、その従属データ項目に OCCURS 句の DEPENDING が指定されている場合、argument-1 の長さは DEPENDING 指定で指定されたデータ項目の内容を使用して決定される。この評価は、送信側データ項目の OCCURS 句の規則に従って行われる。
1 字類 UTF-8 の項目はネイティブ COBOL でのみサポートされる