已知strcpy函数的原型是
char*strcpy(char *strDest, const char *strSrc);
其中strDest是目的字符串,strSrc是源字符串。
不调用C++/C的字符串库函数,请编写函数 strcpy
#include<stdio.h>
#define N 100
char *strcpy(char *dest,char *src)
{
if(dest == NULL || src ==NULL)
{
perror("Invalid arguments\n");
exit(1);
}
char *p = dest;
while((*dest++ = *src++) != '\0');
return p;
}
int main()
{
char str1[N];
char *str2 = "abcdef";
printf("%s\n",strcpy(str1,str2));
return 0;
}
strcpy能把strSrc的内容复制到strDest,为什么还要char * 类型的返回值?
为了实现链式表达。
int length = strlen(strcpy(strDest,"hello world"));