一般方法:
#include<stdio.h>
#include<assert.h>
char my_strcpy(char *dest,const char *src)
{
assert(dest);
assert(src);
while(*src)
{
*dest = *src;
dest++;
src++;
}
dest = '\0';
}
int main()
{
char dest[10]={0};
char *src="abcdef";
my_strcpy(dest,src);
printf("%s\n",dest);
return 0;
}
其实,函数部分可以大大的简化:
char* my_strcpy(char *dest,const char *src) //为了将这个函数的返回值作为其他函数的参数,即链式访问
{
assert(dest);
assert(src);
char *ret = dest; //把dest先保存起来,因为而底下的的dest一直在++
while(*dest++ = *src++)
;
return ret;
}
本文出自 “Vs吕小布” 博客,谢绝转载!