概述
#include<stdio.h>
#include<windows.h>
void *my_memcpy(void *arr1,const void *arr,size_t count)
{
void *ret=arr1;
while (count--)
{
*(char*)arr1 =*(char*) arr;
arr1 = (char*)arr1 + 1;
arr = (char*)arr + 1;
}
return ret;
}
int main()
{
char arr[32] = "abcde";
char arr1[32] = { 0 };
int num = 3;
char *str=my_memcpy(arr1, arr,num);
printf("%sn",str);
system("pause");
return 0;
}
函数算法思想:
用两个数组分别表示两个字符串,一个为空,一个为“abcde”,定义两个void*型的指针,void *arr1,void *arr,再定义一个size_t count,来表示需要拷贝的位数,本例中用的三位。
然后使用while拷贝三位,用count作为判断条件,当count为0的时候,退出循环,再将得到的字符串打印出来。
最后
以上就是细心爆米花为你收集整理的模拟实现memcpy函数的全部内容,希望文章能够帮你解决模拟实现memcpy函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复