//memmove函数可以处理内存重叠的部分
//void* my_memmove(void* dest, const void* src, size_t num)//自制memmove函数
//{
// void* ret = dest;
// assert(dest && src);
// if (dest < src)
// {
// //前>后
// while (num--)
// {
// *(char*)dest = *(char*)src;
// dest = (char*)dest + 1;
// src = (char*)src + 1;
// }
// }
// else
// {
// //后>前
// while (num--)
// {
// *((char*)dest + num) = *((char*)src + num);
// }
// }
// return ret;
//}
//int main()
//{
// int arr1[10] = { 1,2,3,4,5,6,7,8,9,10 };
// int arr2[20] = { 0 };
// //目的:将arr1放在arr2中,不能用strcpy,因为
// //strcpy函数类型是char*strcpy(char*dest,const char*src)是char型,不是int型
// memmove(arr2, arr1, 20);
// return 0;
//}
memmove函数使用方法,案例,注意事项以及自制函数实现memmove函数
最新推荐文章于 2024-08-13 15:03:19 发布