Rational Developer for System z
Enterprise COBOL for z/OS バージョン 4.1 プログラミング・ガイド


図の説明: BY REFERENCE、BY CONTENT、および BY VALUE での受け渡し

以下のコードの抜粋を使用して、データを受け渡すさまざまな方法について説明します。

MOVE 16 TO X.
CALL ABC USING
    BY REFERENCE X
    BY CONTENT X
    BY VALUE X
    BY CONTENT ADDRESS OF X

レジスター 1 には、パラメーター・リストのメモリー・アドレスが入ります。 パラメーター・リストには 4 つの項目、すなわちデータ項目 X のインスタンスごとに 1 つの項目があり、CALL ステートメントで X を受け渡す順序で並んでいます。

1 番目の項目は、BY REFERENCE での受け渡しを示しています。パラメーター・リストには、呼び出し側プログラムの WORKING-STORAGE 内の X のメモリー・アドレスを指すポインターが入ります。

2 番目の項目は、BY CONTENT での受け渡しを示しています。パラメーター・リストには、一時ストレージ内のデータ項目 X のコピーを指すポインターが入ります。

3 番目の項目は、BY VALUE での受け渡しを示しています。パラメーター・リストには、データ項目 X の内容 (このコード・サンプルでは 10 進値 16) が入ります。

4 番目の項目は、BY CONTENT でのデータ項目 X のアドレスの受け渡しを示しています。パラメーター・リストには、一時ストレージ内のメモリーを指すポインターが入ります。そのメモリーには、データ項目 X のアドレスが入ります。

図の説明の終わり。


ご利用条件 | フィードバック

このインフォメーション・センターでは Eclipse テクノロジーが採用されています。(http://www.eclipse.org)