每日一个C库函数-#2-memmove()
来源
C 标准库 - <string.h>
声明
void *memmove(void *str1, const void *str2, size_t n);
- str1:指向用于存储复制内容的目标数组,类型强制转换为 void* 指针;
- str2:指向要被复制的数据源,类型强制转换为 void* 指针;
- n:要被复制的字节数;
- RETURN:返回一个指向目标存储区 str1 的指针。
用法&作用&注意事项
-
如果目标存储区和源数据存在 重叠 ,可以保证源数据在被覆盖之前将重叠区域的字节拷贝到目标存储区中,复制后源数据会被更改。当目标存储区和源数据没有重叠时,与 memcpy() 函数功能相同;
-
一定要注意字节数大小,也就是**n**的正确;
-
目标存储区大小一定要能够容纳源数据的内容,否则会溢出,编译器会报出警告;