c语言strcpy和memcpy
来源:互联网 发布:sai绘画软件下载 编辑:程序博客网 时间:2024/06/04 22:46
{
if ((src == NULL) || (dest == NULL)) //判断参数src和dest的有效性
{
return NULL;
}
char *strdest = dest; //保存目标字符串的首地址
while ((*strDest++ = *strSrc++)!='\0'); //把src字符串的内容复制到dest下
return strdest;
}
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主要有以下3方面的区别。
1、复制的内容不同。strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组、整型、结构体、类等。
2、复制的方法不同。strcpy不需要指定长度,它遇到被复制字符的串结束符"\0"才结束,所以容易溢出。memcpy则是根据其第3个参数决定复制的长度。
3、用途不同。通常在复制字符串时用strcpy,而需要复制其他类型数据时则一般用memcpy
- c语言strcpy和memcpy
- C语言中strcpy和memcpy
- C语言实现strcpy和memcpy
- C语言memset、memcpy、memmove和strcpy
- C语言中memset ,memcpy 和strcpy 的区别
- C语言中的复制函数(strcpy和memcpy)
- C语言函数--strcpy和memcpy的比较
- c语言之数据拷贝memcpy strcpy
- C语言之memcpy与strcpy
- C++:memset ,memcpy 和strcpy 的区别
- c中memcpy和strcpy区别
- c语言strcpy函数和memcpy函数,拷贝后,源数组的内容改变了
- C语言中的字符串拷贝函数strcpy和内存拷贝函数memcpy的区别与实现
- C语言字符串相关库函数的实现strcpy、memcpy、strncpy、strcat、strncpy、memset、memcpy、strcpy
- c语言中,memset,memcpy,strcpy的区别
- 细谈C语言中的strcpy,strncpy,memcpy,memmove,memset函数
- 细谈C语言中的strcpy,strncpy,memcpy,memmove,memset函数
- 细谈C语言中的strcpy,strncpy,memcpy,memmove,memset函数
- 文章标题
- Android 计算器 sin cos tan 值问题
- 【Java并发编程】之四:守护线程与线程阻塞的四种情况 (r)
- tableView的Cell调整imageView的大小
- C#基础知识(九)队列、栈、链表
- c语言strcpy和memcpy
- java中数组与容器的区别
- 92.leetcode Reverse Linked List II(medium)[链表逆序]
- 传智播客推出少儿教育品牌-酷丁鱼
- 【Java并发编程】之五:volatile变量修饰符—意料之外的问题(含代码)(r)
- TRANSFORM_TEX
- LeetCode | Largest Rectangle in Histogram
- C++ 非托管COM在C#下调用的问题
- 数据仓库的模型设计