void *memcpy(void*dest,constvoid *src,size_tcount)//1.源串要有const修饰
{
char *pDest=(char*)(dest);//2.将原始指针赋给新变量
const char *pSrc=(constchar*)(src);
//3.目的地址和源地址重叠,从源地址的末尾方向开始拷贝 { //将指针指向末尾 return pDest;//5.返回,这样可以嵌套使用 作者“冒大烟的羊肉串的专栏”
if( pDest>pSrc&& pDest
pDest = pDest + count-1;
pSrc = pSrc + count-1;
while(count--){
*pDest--=*pSrc--;
}
}
//4.目的地址和源地址不重叠,从源地址的开始方向拷贝
else
{
while(count--){
*pDest++=*pSrc++;
}
}
}