博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【C】自己写一个程序实现memcpy功能
阅读量:6281 次
发布时间:2019-06-22

本文共 525 字,大约阅读时间需要 1 分钟。

memcpy即内存复制,程序如下

void *my_memcopy(void *dst,const void *src,size_t count){	char *pdst = (char*)dst;	char *psrc = (char*)src;		if(pdst == NULL || psrc == NULL)	{		return NULL;	}	if(pdst > psrc && pdst < psrc + count)//防止内存复制重叠,所以从后向前复制	{		pdst = pdst + count + 1;		psrc = psrc + count + 1;		while(count != 0)		{			*pdst = *psrc;			psrc--;			pdst--;			count--;		}	}	else	{		size_t i = 0;		for(i = 0;i < count;i++)		{			*pdst = *psrc;			psrc++;			pdst++;		}	}	return dst;}复制代码

转载于:https://juejin.im/post/5b57169d6fb9a04fd835746a

你可能感兴趣的文章
<三体> 给岁月以文明, 给时光以生命
查看>>
Android开发 - 掌握ConstraintLayout(九)分组(Group)
查看>>
springboot+logback日志异步数据库
查看>>
Typescript教程之函数
查看>>
Android 高效安全加载图片
查看>>
vue中数组变动不被监测问题
查看>>
3.31
查看>>
类对象定义 二
查看>>
收费视频网站Netflix:用户到底想要“点”什么?
查看>>
MacOS High Sierra 12 13系统转dmg格式
查看>>
关于再次查看已做的多选题状态逻辑问题
查看>>
动态下拉菜单,非hover
查看>>
政府安全资讯精选 2017年第十六期 工信部发布关于规范互联网信息服务使用域名的通知;俄罗斯拟建立备用DNS;Google打击安卓应用在未经同意情况下收集个人信...
查看>>
简单易懂的谈谈 javascript 中的继承
查看>>
iOS汇编基础(四)指针和macho文件
查看>>
Laravel 技巧锦集
查看>>
Android 使用 ViewPager+RecyclerView+SmartRefreshLayout 实现顶部图片下拉视差效果
查看>>
Flutter之基础Widget
查看>>
写给0-3岁产品经理的12封信(第08篇)——产品运营能力
查看>>
ArcGIS Engine 符号自动化配置工具实现
查看>>