//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; //}