memcpy函数
memcpy
函数是C语言标准库中的一个函数,用于在内存之间进行字节块的复制。其原型如下:
void *memcpy(void *dest, const void *src, size_t n);
这个函数的作用是从源地址 src
复制 n
个字节的数据到目标地址 dest
。它返回目标地址 dest
的指针。
dest
:目标地址,指向要写入数据的内存位置。src
:源地址,指向要复制的数据的内存位置。n
:要复制的字节数。
使用 memcpy
函数的一个例子可能如下:
#include <stdio.h>
#include <string.h>
int main() {
char source[] = "Hello, World!";
char destination[20];
// 使用memcpy将source中的数据复制到destination
memcpy(destination, source, strlen(source) + 1); // +1 以包括字符串末尾的 null 终止符
// 输出复制后的字符串
printf("Source: %s\n", source);
printf("Destination: %s\n", destination);
return 0;
}
在这个例子中,memcpy
用于将字符串 "Hello, World!" 从 source
复制到 destination
。这个函数非常有用,特别是在需要在内存中复制大块数据时,例如复制数组、结构体或字符串。