memcpy原型
void* (void* dest,const void* src,size_t len)
为什么是void呢?,因为memcpy支持任何匀速类型的拷贝,所以给成void类型,然后在进行强制类型转化即可达到任意类型的拷贝。
这同样也是strcpy和memcpy的一个差别,这里mempy是对内存进行操作的所以无论你是什么类型,都可以对其进行操作。
memcpy模拟实现
void *my_memcpy(void *det, const void *src, int num)
{
char *p1 = (char *)det;
char *p2 = (char *)src;
char *ret = p1;
while (num)
{
*p1 = *p2;
p1++;
p2++;