ILE COBOL 解説書


LENGTH

LENGTH 関数は、引数の長さのバイト数に等しい整数を戻します。関数タイプは整数です。

関数結果は 9 桁の整数です。

形式
 
>>-FUNCTION LENGTH--(引数-1)-----------------------------------><
 
 
引数-1
非数字、ブール、または DBCS のリテラルであっても構いません。 つまり、あらゆるクラスまたはあらゆるカテゴリーのデータ項目を指定できるということです。

引数-1 または引数-1 に従属する任意のデータ項目が、OCCURS 文節の DEPENDING 句で記述されている場合は、DEPENDING 句で指定されたデータ名によって参照されるデータ項目の内容が、LENGTH 関数の評価時に使用されます。

引数-1 は、タイプ名またはタイプ名に従属する項目であってもかまいません。

USAGE IS POINTER または USAGE IS PROCEDURE-POINTER で記述されたデータ項目は、LENGTH 関数の引数-1 として使用できます。 結果は常に 16 になります。

ADDRESS OF 特殊レジスターまたは LENGTH OF 特殊レジスターは、LENGTH 関数に対する引数-1 として使用できます。 結果は、ADDRESS OF オブジェクトまたは LENGTH OF オブジェクトとは無関係に、それぞれが常に 16 と 4 になります。

引数-1 が非数字リテラル、基本データ項目、または可変のオカレンス・データ項目を含まないグループ・データ項目である場合、 戻り値は、引数-1 の長さの文字位置の個数に等しい整数です。

引数-1 がヌル終了の非数値リテラルである場合、戻り値は、リテラルの最後のヌル文字を除いたリテラル内の英数字位置の数に等しくなります。1 バイトおよび 2 バイト文字の混合を含むヌル終了の非数値リテラルの長さは、各バイトが 1 バイト文字であるかのようにカウントされます。

+----------------------------------IBM 拡張----------------------------------+

引数-1 が DBCS または国別文字のデータ項目またはリテラルである場合には、 戻り値は、引数の長さの DBCS 文字位置または国別文字位置の個数です。 たとえば、FUNCTION LENGTH (G"D1D2") は、値 4 ではなく 2 を戻します。

+------------------------------End of IBM 拡張-------------------------------+

戻り値には、暗黙の FILLER 文字が (もしあれば) 含まれます。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]