码迷,mamicode.com
首页 > 其他好文 > 详细

浅谈字符串处理函数(三)

时间:2016-01-24 19:52:09      阅读:265      评论:0      收藏:0      [点我收藏+]

标签:内存重叠   字符串   

前面我们谈到了strcpy和strncpy这两个函数。这两个函数都没有考虑到内存重叠,假如要考虑内存重叠,我们又该如何实现呢?所谓重叠,就是src未处理的部分已经被dst给覆盖了

memcpy的函数原型如下:void *memcpy(void *dest, const void *src, size_t n);

memcpy函数的功能是从源src所指的内存地址的起始位置开始拷贝n个字节到目标dest所指的内存地址的起始位置中。

函数返回指向dest的指针。

函数实现如下:

void *mymemcpy(void *dst,void *src,size_t count)
{
	char *p1=(char *)dst;
	char *p2=(char *)src;
	void *ret=dst;
	while(count--)
	{
		*p1=*p2;
		p1++;
		p2++;
	}
	return ret;
}


浅谈字符串处理函数(三)

标签:内存重叠   字符串   

原文地址:http://luminous.blog.51cto.com/10797288/1738030

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!