strcpy和memcpy的区别
来源:互联网 发布:大学高等数学软件 编辑:程序博客网 时间:2024/06/05 11:55
strcpy:
strcpy是字符串的拷贝。
strcpy函数原型:
char* strcpy(char* dest, const char* src);
模拟实现strcpy:
char * strcpy(char * dest, const char * src) // 实现src到dest的复制{ if ((src == NULL) || (dest == NULL)) //判断参数src和dest的有效性 { return NULL; } char *strdest = dest; //保存目标字符串的首地址 while ((*strDest++ = *strSrc++)!='\0'); //把src字符串的内容复制到dest下 return strdest;}
memcpy:
memcpy是内存拷贝、
memcpy函数原型:
void* memcpy(char* dest, const char* src, size_t size);
模拟实现memcpy:
void *memcpy(void *memTo, const void *memFrom, size_t size){ if((memTo == NULL) || (memFrom == NULL)) //memTo和memFrom必须有效 return NULL; char *tempFrom = (char *)memFrom; //保存memFrom首地址 char *tempTo = (char *)memTo; //保存memTo首地址 while(size -- > 0) //循环size次,复制memFrom的值到memTo中 *tempTo++ = *tempFrom++ ; return memTo;}
strcpy和memcpy的区别:
(1)复制的内容不同。strcpy只能复制字符串,而memcpy能复制任意的类型,如数组,结构体等。
(2)复制的方法不同。strcpy没有指定复制的个数,直到遇到“\0”才完成复制,这样容易溢出。而memcpy指定了复制的长度。
(3)用途不同。如果复制字符串,可以使用strcpy,如果要复制其他类型的数据,那么就使用memcpy。
阅读全文
0 0
- memcpy()和strcpy的区别
- memcpy 和strcpy的区别
- memcpy和strcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- memcpy和strcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- strcpy和memcpy的区别
- jenkins,maven--Execute shell构建
- Node.js中package.json中库的版本号详解(^和~区别)
- 详谈java内存模型
- java中常见的session种类
- atos
- strcpy和memcpy的区别
- Hdu 5710 Digit-Sum【思维】
- 常驻通知栏跳转到别的应用
- C.Jury Marks
- Python集合(set)类型的操作
- springmvc访问静态资源的springmvc.xml配置
- WINDOWS核心编程——异常处理
- CSS动画详解
- 可以在保利威视后台查看自己开发CMS系统帐号看了某个视频多长时间