memcpy() 使用示例
时间: 2023-10-16 16:25:58 浏览: 102
关于memcpy和memmove的一点重要说明
好的,memcpy() 是一个 C语言 的函数,它的作用是将内存中的一段数据复制到另一个内存地址中。具体使用方法如下:
```c
void *memcpy(void *dest, const void *src, size_t n);
```
其中,dest 表示目标内存地址,src 表示源内存地址,n 表示要复制的字节数。例如,下面的代码将一个结构体对象复制到另一个对象中:
```c
#include <stdio.h>
#include <string.h>
typedef struct {
int age;
char name[20];
char address[50];
} Person;
int main() {
Person p1 = {25, "Tom", "Beijing"};
Person p2;
memcpy(&p2, &p1, sizeof(Person));
printf("p1: age=%d, name=%s, address=%s\n", p1.age, p1.name, p1.address);
printf("p2: age=%d, name=%s, address=%s\n", p2.age, p2.name, p2.address);
return 0;
}
```
这段代码将 p1 中的数据复制到了 p2 中,并打印了两个结构体对象的内容。需要注意的是,由于结构体对象包含不同的数据类型,因此在使用 memcpy() 函数进行复制时,需要指定要复制的字节数,即 sizeof(Person)。
阅读全文