自定义memcpy和strcpy
来源:互联网 发布:java单行注释快捷键 编辑:程序博客网 时间:2024/06/05 18:40
memcpy
memcpy是C语言中的内存复制函数,它的函数原型:
void *memcpy(void *dest,const void *src,int size)它的目的是将SRC指向地址为起始地址的连续size 个字节的数据复制到dest指向的地址为起始地址的空间内,注意这两块内存区域不能重叠,同时与strcpy相比,没有遇到'\0'截止一说而是一定赋值size个字节,而且可以用来复制任何类型数据,而不仅仅字符串。
自定义内存复制函数如下:
void *memcpy(void *dest,const void *src,int count){char *pdest=static_cast<char*>(dest);const char* psrc=static_cast<const char*>(src);if(pdest>psrc&&(pdest<(psrc+count))){ for(int i=count-1;i>=0;i--)pdest[i]=psrc[i]; }//重合else { for(int i=0;i<count;i++)pdest[i]=psrc[i]; }return dest;}
strcpy
strcpy的原型是extern char *strcpy(char *dest,const char *src),其功能是把src指向的字符串复制到dest指向的数组,注意src和dest所指的区域也不可重叠,且dest必须有足够空间来存储src的字符串。
代码:
char *strcpy(char *sdest,const char *ssrc){assert(ssrc!=NULL)&&(ssrc){char *add=sdest;while((*sdest++=*ssrc++)!='\0')}return add;}
阅读全文
0 0
- 自定义memcpy和strcpy
- strcpy和memcpy
- strcpy和Memcpy。
- strcpy和memcpy
- strcpy和memcpy
- memset ,memcpy 和strcpy
- strcpy和memcpy
- strcpy和memcpy区别
- Strcpy 和 memcpy 实现
- strcpy、strncpy 和 memcpy
- strcpy和memcpy 区别
- strcpy和memcpy区别
- strcpy和memcpy区别
- memcpy和strcpy
- memcpy 和 strcpy()
- strcpy和memcpy
- strcpy和memcpy区别
- memcpy和strcpy
- Hadoop的简单单词统计案例
- 数人云|当容器与CI/CD相遇,7个建议送给你
- js 判断数组是否包含某个key
- “多线程”、“分布式”、“并行”和“并发”什么意思?有个区别?
- Word Break--lintcode
- 自定义memcpy和strcpy
- hive构建数据仓库
- ref out返回参数的区别
- Android apk动态加载机制的研究
- 从零构建SMTP邮件发送类
- Kyligence Analytics Platform Enterprise
- 开始的开始
- [自制操作系统] BMP格式文件读取&图形界面系统框架-应用接口设计
- leetcode题解-29. Divide Two Integers