memcpy 函数文档
函数概要:
memcpy 函数从 src 指向的内存空间拷贝 n 个字节到 dest 指向的内存空间。src 和 dest 指向的内存区域不能出现重叠,否则应该使用 memmove 函数。
memcpy 函数并不关心被复制的数据类型,只是逐字节地进行复制,这给函数的使用带来了很大的灵活性,可以面向任何数据类型进行复制。
函数原型:
#include <string.h> ... void *memcpy(void *dest, const void *src, size_t n);
参数解析:
|
参数 |
含义 |
|
dest |
指向目标内存空间 |
|
src |
指向源内存空间 |
|
n |
指定要拷贝到 dest 指向空间的前 n 个字节 |
返回值:
返回 dest 指向的内存空间。
演示:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(void)
{
char str[] = "I love FishC.com!";
char *ptr;
int length = sizeof(str);
printf("length = %d\n", length);
ptr = (char *)malloc(length * sizeof(char));
if (ptr == NULL)
{
exit(1);
}
memset(ptr, 0, length);
memcpy(ptr, str, length);
printf("%s\n", ptr);
return 0;
}




