>> C言語関数一覧トップに戻る

C言語 memcpy 使い方

今回はC言語のmemcpy関数について説明します。

memcpy関数は指定バイト数分のメモリをコピーする関数です。

■書式
#include <string.h>
void *memcpy(void *buf1, const void *buf2, size_t n);

第一引数にコピー先のメモリブロックのポインタ
第二引数にコピー元のメモリブロックのポインタ
第三引数はコピーサイズ

をそれぞれ指定します。
■サンプルコード
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(void)
{
	char buf[] = "ABCDDEFG";
	char buf2[] = "123456789";

	//3バイトだけコピー
	memcpy(buf,buf2,3);

	//表示
	printf("コピー後のbuf文字列→%s\n",buf);
	

	return 0;
}
■実行結果
コピー後のbuf文字列→123DDEFG


上記のコードではmemcpyで3バイト分だけコピーしています。
bufの「ABCDDEFG」という文字列がbuf2の「123456789」から3バイトだけコピーされたので、
先頭のABCが123に書き換わっていることが確認できます。

>> 【C言語 memmove 使い方】に進む
>> C言語関数一覧トップに戻る