回 帖 发 新 帖 刷新版面

主题:用指针编写strcpy()函数 实现复制字符串

注意:编写函数,void strcpy(char *ss,char * ds)实现字符串的复制
我所编写的代码如下,不知道为什么结果出现了写乱码,复制没问题,就是出现乱码。
[code=c]
#include<stdio.h>
#include<string.h>
void strcpy(char *ss,char * ds);

int main(void)
{
    char a[20],b[20];
    char *ss,*ds;
    printf("please input a string:\n");
    gets(a);
    ss=a;
    ds=b;
    strcpy(ss,ds);
    printf("b数组为 ");
    puts(b);
    return 0;
}

void strcpy(char *ss,char *ds)
{
    while((*(ds++)=*(ss++))=='\0');
}
[/code]不知道哪里出问题了,请高手帮忙。

回复列表 (共2个回复)

沙发

while((*(ds++)=*(ss++)) !='\0'); //囧。。

板凳


第一:strcpy(ss,ds);错了,应该是strcpy(ds,ss);
第二:你包含了<string.h>头文件,里面有strcpy()函数,所以你重新定义的时候应该把函数名称改一下就ok了。或者你这个程序就不需要<string.h>,因为你包含了但是没用任何一个函数,多余。

我来回复

您尚未登录,请登录后再回复。点此登录或注册