更新 : 2007 年 11 月
バッファ間でバイト数をコピーします。これらの関数のセキュリティを強化したバージョンについては、「memcpy_s、wmemcpy_s」を参照してください。
void *memcpy( void *dest, const void *src, size_t count ); wchar_t *wmemcpy( wchar_t *dest, const wchar_t *src, size_t count );
コピー先のバッファ。
コピー元のバッファ。
コピーする文字数。
dest の値。
memcpy は、count に指定したバイト数を src から dest にコピーします。wmemcpy は、count に指定した数のワイド文字 (2 バイト) をコピーします。コピー元とコピー先を同じにした場合の memcpy の動作は未定義です。重なり合う領域を処理するには、memmove を使用します。
セキュリティに関するメモ コピー先のバッファのサイズがコピー元のバッファのサイズ以上であることを確認してください。詳細については、「Avoiding Buffer Overruns」を参照してください。
次の例のように、memcpy 関数および wmemcpy 関数が使用されなくなるように _CRT_SECURE_DEPRECATE_MEMORY 定数をインクルード ステートメントの前で定義すると、これらの関数だけが使用されなくなります。
#define _CRT_SECURE_DEPRECATE_MEMORY #include <memory.h>
または
#define _CRT_SECURE_DEPRECATE_MEMORY #include <wchar.h>
ルーチン
必須ヘッダー
memcpy
<memory.h> または <string.h>
wmemcpy
<wchar.h>
互換性の詳細については、「C ランタイム ライブラリ」の「互換性」を参照してください。
memcpy 関数の使用例については、「memmove」を参照してください。