首先,我们来看一下MSDN中对它的定义,函数类型,返回值。
memcpy
(定义)Copies characters between buffers.
(函数参数)void *memcpy( void *dest, const void *src, size_t count );
(返回值)memcpy returns the value of dest.
接下来看一下代码实现
#include<windows.h>
void* my_memcpy(void* dest,const void* str, size_t sz)
{
assert(dest != NULL);
assert(str != NULL);
void* ret = dest;
while (sz--)
{
*(char*)dest = *(char*)str;
dest = (char *)dest + 1;
str = (char *)str + 1;
}
return dest;
}
int main()
{
int arr[10] = {1,2,3,4,5,6,7,8,9};
int arr1[3] = {3,4,5};
my_memcpy(arr,arr1 , 2* sizeof(arr1[0]));
system("pause");
return 0;
}