首页 > 代码库 > 【C语言】模拟实现memmove函数(考虑内存重叠)
【C语言】模拟实现memmove函数(考虑内存重叠)
//模拟实现memmove函数(考虑内存重叠) #include <stdio.h> #include <assert.h> #include <string.h> void * memmove(void * dst, const void * src, int count) { void * ret = dst; assert(dst); assert(src); if (dst <= src || (char *)dst >= ((char *)src + count)) //正常情况不发生重叠,从低到高 { while (count--) { *(char *)dst = *(char *)src; dst = (char *)dst + 1; src = http://www.mamicode.com/(char *)src + 1;"hello!"; char *q = "world"; memmove(p, q,strlen(q)+1 ); printf("%s\n", p); return 0; }
【C语言】模拟实现memmove函数(考虑内存重叠)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。