memcpy和 memmove有什么区别
2012-05-11 21:26
417 查看
如果源和目的的参数有重叠,memmove能够提供保证的行为,而memcpy则不能提供这样的保证行为,因此可以实现得更加有效率。如果对你的程序有疑问,最好使用memmove。
实现memmove()好像很容易,只需要额外的检测即可对重叠参数提供有效的保证。
实现memmove()好像很容易,只需要额外的检测即可对重叠参数提供有效的保证。
void *memove(void *dst,void *src,size_t n) { register char *dp = dst; register char const *sp = src; if(dp<sp){ while(n-->0){ *dp++ = *sp++; } } else{ dp+=n; sp+=n; while(n-->0) { *--dp = *--sp; } } return dest; }
相关文章推荐
- memcpy() 和 memmove() 有什么区别?
- memcpy() 和 memmove() 有什么区别?
- memmove 和memcpy有什么区别
- memcpy() 和memmove() 有什么区别?
- memcpy() 和 memmove() 有什么区别?
- memcpy 和 memmove 有什么区别?
- C的memcpy,memmove和strcpy的区别是什么?
- memmove 和memcpy有什么区别
- 迅雷面试题:memcpy和memmove的区别
- strcpy和strncpy区别 memcpy strcpy strncpy lstrcpy lstrncpy wstrcpy, memmove
- memmove 和 memcpy的区别
- C的memcpy和strcpy的区别是什么?
- 也看vc下的memcpy和memmove的区别!
- memcpy和memmove的区别??(zhuan)
- memcpy和memmove的区别与联系
- memcpy和memmove的区别
- memmove 、 memcpy 的区别
- strcpy和strncpy区别 memcpy strcpy strncpy lstrcpy lstrncpy wstrcpy, memmove
- memcpy和memmove的区别
- memcpy和memmove的区别和联系