memcpy函数C语言
时间: 2023-08-27 18:16:31 浏览: 62
memcpy函数是C语言中的一个标准库函数,用于将指定长度的数据从源地址复制到目标地址。它的函数原型如下:
```c
void *memcpy(void *dest, const void *src, size_t n);
```
其中,`dest`是目标地址,`src`是源地址,`n`是要复制的字节数。
使用memcpy函数可以方便地进行内存拷贝操作。它能够按字节精确地复制数据,不会受到数据类型的影响。通常情况下,我们使用memcpy函数来复制数组、结构体等数据类型。
下面是一个使用memcpy函数的示例:
```c
#include <stdio.h>
#include <string.h>
int main() {
char src[] = "Hello, CSDN";
char dest[20];
memcpy(dest, src, strlen(src) + 1);
printf("复制后的字符串:%s\n", dest);
return 0;
}
```
以上代码将源字符串`src`复制到目标字符串`dest`中,并打印出复制后的结果。注意,为了确保目标字符串足够大,我们需要提前分配足够的空间。在本例中,目标字符串`dest`的长度为20。
需要注意的是,由于memcpy函数不会进行字符串结束符的自动添加,因此在复制字符串时需要手动将字符串结束符('\0')也进行复制。在上述示例中,我们使用了`strlen(src) + 1`作为要复制的字节数,其中`strlen(src)`表示源字符串的长度,`+ 1`则是为了复制字符串结束符。