C$MEMCPY (動的メモリ ルーチン)

2 箇所のメモリの間でバイトをコピーします。
注: This ACUCOBOL-GT library routine is available in this COBOL version. Any compatibility issues in this COBOL system are in the Compatibility Issues section at the end of the topic.

使用法

CALL "C$MEMCPY" 
    USING, BY VALUE, DEST-PTR, SRC-PTR, NUM-BYTES

パラメーター

DEST-PTR USAGE POINTER または USING BY REFERENCE 宛先の最初のバイトのアドレスを含めます。
SRC-PTR USAGE POINTER または USING BY REFERENCE ソースの最初のバイトのアドレスを含めます。
NUM-BYTES USAGE UNSIGNED-INT または符号なし数字リテラル コピーするバイト数を示します。

説明

このルーチンは、SRC-PTR に含まれるアドレスのメモリの NUM-BYTES バイトを、DEST-PTR に含まれるアドレスにコピーします。このルーチンは、パラメーターが参照ではなく値によって渡される点を除き、M$COPY ルーチン (動的メモリ ルーチン) と機能上似ています。このルーチンは、M$PUT および M$GET が適していない場合に使用できます。このルーチンの使用は比較的危険であることに注意してください。このルーチンはエラー チェックを行わず、無効なデータを渡すとメモリ アクセス違反が発生しやすくなります。つまり、非常に低レベルのルーチンであるため、注意して使用する必要があります。

SRC-PTR および DEST-PTR に POINTER データ項目を渡す必要はありません。必要に応じて、それらのどちらかまたは両方を、BY REFERENCE で渡すデータ項目で置き換えられます。置き換える場合、データ項目のアドレスは C$MEMCPY に渡されます。たとえば、次のようにして SRC-PTR に含まれるメモリ アドレスから 10 バイトを DEST-ITEM にコピーできます。

     CALL "C$MEMCPY" 
        USING BY REFERENCE DEST-ITEM, BY VALUE SRC-PTR, 10

互換性の問題

なし。