C语言标准函数库中包括 strcpy 函数,用于字符串复制(赋值)。作为练习,我们自己编写一个功能与之相同的函数。
函数原型
char* StrCpy(char *dst, const char *src);
说明:src 为源串的起始地址,dst 为目的串起始地址,函数将 src 串复制到 dst 串,函数值为 dst。
裁判程序
#include <stdio.h>
#include <string.h>
char* StrCpy(char *dst, const char *src);
int main()
{
char a[1024], b[1024], c[1024];
gets(a);
StrCpy(c, StrCpy(b, a));
puts(a);
puts(b);
puts©;
return 0;
}
/* 你提交的代码将被嵌在这里 */
输入样例
abcd
输出样例
abcd
abcd
abcd
程序1:
char* StrCpy(char *dst, const char *src)
{
int i;
while(src[i]!='\0'){
dst[i]=src[i];
i++;
}
dst[i]='\0';
return dst;
}
程序2:
char* StrCpy(char *dst, const char *src)
{
char* ret=dst;
while(*src!='\0'){
*dst=*src;
dst++;
src++;
}
*dst='\0';
return ret;
}
程序3:
char* StrCpy(char *dst, const char *src)
{
char* ret=dst;
while(*dst++=*src++){
;
}
*dst='\0';
return ret;
}