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
なし。