Board logo

標題: [疑難] 字串反轉傳回值的問題 [打印本頁]

作者: fmsh    時間: 2007-1-9 01:28     標題: 字串反轉傳回值的問題

大家好..
我用turbo c寫了一個字串反轉的問題..
可是傳回來的值都是空字串..
想請問哪裡有問題..
另外..
想請問有更好的寫法嗎??
謝謝..

char *strrev(char *str1,char *str2)
{
int i,j;
for (i=0;str1!='\0';i++);
for (j=i;j>=0;j++)
    str2[i-j]=str[j];
return str2;
}
void main()
{
char string1[10],string2[10];
int i;
printf("enter string1");
gets(string1);
strrev(string1,string2);
printf("string2=%s",string2);
}
作者: jayzhou_2046    時間: 2007-1-9 09:22

小弟發現
你的程式編譯有問題啊!
作者: jayzhou_2046    時間: 2007-1-9 09:31

小弟改寫的strrev如下:
引用:
char *strrev(char *str1, char *str2) {
        int        i;
        int        len = 0;
       
        for (i = 0; str1 != '\0'; i++)
                len++;
               
        for (i = 0; str1 != '\0'; i++) {
                str2[len - i - 1] = str1;
        }
        str2 = '\0';
        return str2;
}
注意第一個for loop旨在找str1的長度.
可以直接用strlen()  (<-- 定義在string.h)




歡迎光臨 香港 Xocat Forum 討論區 (http://p.xocat.com/p/) Powered by Discuz! 6.0.0