サブプログラムを呼び出した CALL 文の USING 指定または GIVING 指定で渡されたパラメーターに関する情報を返します。
制約事項: This routine is supported in native COBOL only.
When calling this routine, ensure you are using the 1024 calling convention.
この情報は、引数の型および長さを示し、引数が数字または数字編集の場合は、引数の桁数およびスケール係数を示します。
構文:
CALL "C$DARG" USING argument-number, argument-description
パラメーター:
- argument-number
- pic 9(n)
- argument-description
-
01 ARGUMENT-DESCRIPTION.
02 ARGUMENT-TYPE PIC 9(2) BINARY(2).
02 ARGUMENT-LENGTH PIC 9(8) BINARY(4).
02 ARGUMENT-DIGIT-COUNT PIC 9(2) BINARY(2).
02 ARGUMENT-SCALE PIC S9(2) BINARY(2).
02 ARGUMENT-POINTER POINTER.
02 ARGUMENT-PICTURE POINTER.
入力パラメーター:
- argument-number
- CALL 文の USING 指定における引数の順位。値がゼロの場合は、CALL 文の GIVING 指定の記述が返されます。
出力パラメーター:
- argument-description
- 渡されたパラメーターの詳細。この詳細は以下のとおりです。
- argument-type
- データ項目の型。「説明」セクションの表を参照してください。
- argument-length
- データ項目の文字位置数。
- argument-digit-count
- ARGUMENT-TYPE フィールド値で引数が数字または数字編集データ項目であると示されている場合は、PICTURE 文字列で定義された引数の桁数。文字データ項目の場合は、ゼロの値が返されます。数字または数字編集データ項目の桁数には、位取りを表す
PICTURE 記号 P で定義された位置は含まれません。
- argument-scale
- ARGUMENT-TYPE フィールド値で引数が数字または数字編集データ項目であると示されている場合は、引数の 10 のべき乗のスケール係数 (暗黙指定の小数点または実際にある小数点の位置)。文字データ項目の場合は、ゼロの値が返されます。データ項目の記述に
PICTURE 記号 P が使用されていると、ARGUMENTSCALE 値の絶対値は ARGUMENT-DIGIT-COUNT 値を超えます。この場合、正のスケール値は、PICTURE 文字列の右側に P の位取りを持つ整数を示し、負のスケール値は、PICTURE
文字列の左側に P の位取りを持つ小数部を示します。
- argument-pointer
- このパラメーターはこの COBOL システムでは返されません。
- argument-picture
- このパラメーターはこの COBOL システムでは返されません。
説明:
CALL 文で渡された引数の数を取得するには、C$NARG ライブラリ ルーチンを使用します。
実際の引数の数は、C$DARG を呼び出すプログラムの手続き部の見出しで宣言されている仮引数の数を超えることがあります。仮引数の数を超える実際の引数にアクセスするために使用できる仮引数名がない場合でも、C$DARG を使用すると実際の引数すべてにアクセスできます。
次の表は、ARGUMENT TYPE フィールドで指定されるデータ型を示すためのものです。
型番号 |
RM/COBOL データ型 |
型番号 |
RM/COBOL データ型 |
0 |
NSE |
16 |
ANS |
1 |
NSU |
17 |
ANS (右揃え) |
2 |
NTS |
18 |
ABS |
3 |
NTC |
19 |
ABS (右揃え) |
4 |
NLS |
20 |
ANSE |
5 |
NLC |
21 |
ABSE |
6 |
NCS |
22 |
GRP (固定長) |
7 |
NCU |
23 |
GRPV (可変長) |
8 |
NPP |
25 |
PTR |
9 |
NPS |
26 |
NBSN |
10 |
NPU |
27 |
NBUN |
11 |
NBS |
32 |
OMITTED |
12 |
NBU |
|
|
制約事項: データ型 OMITTED (型番号 32) は、この COBOL システムではサポートされていません。