内存拷贝函数的实现
来源:互联网 发布:淘宝售后退款多久到账 编辑:程序博客网 时间:2024/05/18 00:03
简单的内存拷贝函数的实现:
void *memcpy(void *dest, const void *src, size_t count){ char *tmp = dest; const char *s = src; while (count--) *tmp = *s ; return dest;}注意到,当原内存和目的内存存在内存重叠时,这个拷贝函数是错误的,先前填充的值会覆盖掉还未进行拷贝的值。
改进后的内存拷贝函数:
void *memcpy(void *dst, const void *src,size_t size){ char *psrc;char *pdst; if(NULL == dst ||NULL == src) { returnNULL; } if((src < dst)&& (char *)src + size > (char *)dst) // 自后向前拷贝 { psrc= (char *)src + size - 1; pdst= (char *)dst + size - 1; while(size--) { *pdst--= *psrc--; } } else//从前向后拷贝 { psrc= (char *)src; pdst= (char *)dst; while(size--) { *pdst++= *psrc++; } } return dst;}
0 0
- 内存拷贝函数的实现
- 内存拷贝函数的实现
- 内存拷贝函数的实现
- 内存拷贝函数实现
- 内存拷贝函数的C语言实现
- 工业级的内存拷贝函数实现
- memmove 内存拷贝函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- 几个典型的内存拷贝及字符串函数实现
- C中字符串拷贝函数strcpy和内存拷贝函数memcpy的区别与实现
- C语言中的字符串拷贝函数strcpy和内存拷贝函数memcpy的区别与实现
- C++常考面试题:实现内存拷贝函数
- 自己实现内存拷贝函数memcpy
- 编写一个memmove函数,实现内存拷贝
- C实现内存拷贝以及字符串拷贝函数
- Android 更新UI的两种方法——handler和runOnUiThread()
- CentOS 6.3下部署LVS(NAT)+keepalived实现高性能高可用负载均衡
- thinkphp3.1多表关联查询
- redis日排行榜,周排行榜
- require.js中用法简版
- 内存拷贝函数的实现
- HDU 1096 A+B for Input-Output Practice (VIII)
- LVS + Keepalived之tun模式
- js上传图片预览
- dumpbin的使用
- java面向对象编程基础总结
- HDU 5154_Harry and Magical Computer
- 设计模式 工厂模式
- Cross-Origin Resource Sharing协议介绍及服务端跨域设置