C中的内存操作函数
1.memcpy()
1.1 函数介绍
void *memcpy(void*dest, const void *src, size_t n);
表示从 src 开始连续复制 n 个单位的数据到 dest 中,结果返回一个指向 dest 的指针。
需要注意的几点:
- memcpy() 与 strcpy() 的区别在于 strcpy() 会遇到 ‘\0’ 就结束,
- 注意 sizeof(a) 不要大于 b 的空间,否则会造成内存溢出
- src dest 只要是可读写空间即可。
1.2 示例代码
将字符串复制到字符串数组中
//作用:将s中的字符串复制到字符数组d中。
//memcpy.c
#include<stdio.h>
#include<string.h>
int main()
{
char* s="Golden Global View";
char d[20];
clrscr();
memcpy(d,s,strlen(s));
d[strlen(s)]='\0';//因为从d[0]开始复制,总长度为strlen(s),d[strlen(s)]置为结束符
printf("%s",d);
getchar();
return 0;
}
//输出结果:GoldenGlobal View
1.3 Reference
- c 函数之 memcpy() 函数用法 csdn