库函数memcpy的实现
1.先看一下memcpy的声明
从str2所指向的内容的n个字节复制到str1所指向的内容中,注意这里是n个字节,后面实现该库函数时我会详细解释.size_t你们可以查一下它的定义,代表着无符号整型.
2.好,来看看我们如何实现它
void* my_memcpy(void* dest,const void* src, size_t num)
{
void* ret = dest;
assert(dest);
assert(src);
//有多少个字节执行多少次
while (num--)
{
//一个字节一个字节进行赋值
*(char*)dest = *(char*)src;
++(char*)dest;
++(char*)src;
}
return ret;
}
这里你应该要产生一种疑问,为什么我们实现该库函数时,它的参数类型为什么要这样设置,难道就是简单地模仿?其实当你用这个库函数时,你会发现,它不仅可以实现数组之间的拷贝,字符串之间的拷贝,结构体数组的拷贝......你想想实现它要接受多
库函数memcpy的实现最先出现在Python成神之路。
共有 0 条评论