看一道关于C语言的题 谢谢帮助

来源:百度知道 编辑:UC知道 时间:2024/05/16 05:30:29
不用标准库函数stropy,编写一个函数My stropy实现将两个字符串复制的功能,然后从键盘输如源字符串,并输出复制后的目的字符串.
能不能麻烦你把具体的程序写出来啊
我想跟自己的对一下
谢谢

用函数或者指针..

char* mystrcpy(char* s,const char* ct)
{
char *p;
p=s;
while(*p!='\0')
p++;

while(*ct !='\0'){
p=*ct;
p++;
}
return s;
}

没有测试。

EngBoon的Mystrcpy函数似乎并不和标准库
char* strcpy(char * s,const char* ct)相同,Mystrcpy函数的第二个参数会覆盖第一个参数原来的内容。

#include <stdio.h>

#define size 50
Mystrcpy(char *, char *);

main(){
char s1[size], s2[]="4tyueyeyt56";
printf("s2 = %s\n\n",s2);
Mystrcpy(s1, s2);
printf("after Mystrcpy\ns1 = %s\ns2 = %s\n", s1, s2);
}

Mystrcpy(char s1[], char s2[]){
int i;
for(i=0; i < size; i++)
s1[i] = s2[i];
}

我已经测试过了,没有问题。
还是有问题, 在Mystrcpy 的 for loop 里,我们要怎样知道s2的大小,在上面我是用了sizeof,应该是可以吧。