void* my_memmove(void*arr1,void*arr2,int size_n)
{
void*ret=arr1;
if(arr2>arr1)//复制位置高于起始位置时从前往后复制(防止复制时更改内容)
{
while(size_n--)
{
*(char*)arr1=*(char*)arr2;
(char*)arr1++;
(char*)arr2++;
}
}
else//复制位置低于于起始位置时从后往前复制
{
while(size_n--)
{
*((char*)arr1+size_n)= *((char*)arr2+size_n);
}
}
return ret;
}
10-25
184
09-20
629