元データとなる指定したメモリ番地からコピー先の指定したメモリ番地へ内容をコピーするmemcpy関数のC言語サンプルソースを以下に記します。
#include <string.h>
void *memcpy(void *dest, const void *src, size_t n);
以下にmemcpyを使用してバッファの複製を作るC言語サンプルコードと実行例を記します。
memcpy.c (改行コードLF)
#include <stdio.h>
#include <string.h>
#define BUFSIZE 10
int main(void)
{
int i;
char src[10];
char dest[10];
for(i=0; i<BUFSIZE; i++) {
src[i] = i;
}
memcpy(dest, src, BUFSIZE);
for(i=0; i<BUFSIZE; i++) {
printf("src[%d] = %d, dest[%d] = %d \n", i, src[i], i, dest[i]);
}
return 0;
}
上記のmemcpyサンプルコードのコンパイルと実行結果を記します。
$ gcc memcpy.c -o memcpy $ ./memcpy src[0] = 0, dest[0] = 0 src[1] = 1, dest[1] = 1 src[2] = 2, dest[2] = 2 src[3] = 3, dest[3] = 3 src[4] = 4, dest[4] = 4 src[5] = 5, dest[5] = 5 src[6] = 6, dest[6] = 6 src[7] = 7, dest[7] = 7 src[8] = 8, dest[8] = 8 src[9] = 9, dest[9] = 9
以上、memcpyのC言語サンプルコードと実行例でした。