现在的位置: 首页 > 综合 > 正文

memcpy

2018年12月14日 ⁄ 综合 ⁄ 共 331字 ⁄ 字号 评论关闭
void *Mymemcpy(void * pDest,const void *pSrc,unsigned int size)
{
	assert(pDest!=NULL && pSrc!=NULL);
	unsigned char *tmpD = (unsigned char*)pDest;
	unsigned char *tmpS = (unsigned char*)pSrc;
	int i=0;
	if (tmpD<pSrc)
	{
		while(i<size)
		{
			*tmpD++ = *tmpS++;
			++i;
		}
	}
	else
	{
		size--;
		tmpD +=size ;
		tmpS +=size ;
		while (size>=0)
		{
			*tmpD-- = *tmpS--;
			--size;
		}
	}

	return pDest;
}

要防止pdest和psrc所指的空间有重叠

【上篇】
【下篇】

抱歉!评论已关闭.