>> C言語関数一覧トップに戻る
今回はC言語のmemcpy関数について説明します。
memcpy関数は指定バイト数分のメモリをコピーする関数です。
■書式
#include <string.h>
void *memcpy(void *buf1, const void *buf2, size_t n);
第一引数にコピー先のメモリブロックのポインタ
第二引数にコピー元のメモリブロックのポインタ
第三引数はコピーサイズ
をそれぞれ指定します。
■サンプルコード
コピー後のbuf文字列→123DDEFG
上記のコードではmemcpyで3バイト分だけコピーしています。
bufの「ABCDDEFG」という文字列がbuf2の「123456789」から3バイトだけコピーされたので、
先頭のABCが123に書き換わっていることが確認できます。
>> 【C言語 memmove 使い方】に進む
>> C言語関数一覧トップに戻る
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言語関数一覧トップに戻る













