c: 使用递归反转字符串?

c: invert string using recursion?

这个函数有什么问题?

   void stringReverse (char stringa[])
    {
        if (stringa[0]!='[=10=]')
        {
            return stringReverse(&stringa[1]);
            printf("%c", stringa[0]);
        }
    }

我必须编写一个使用递归反转字符串的函数(例如:"Hello" in "olleH");该函数必须接收一个字符串(没有别的)并以相反的顺序打印字符...我不明白为什么我写的没有打印任何东西...

return returns 函数的一个值,并且在该范围内不执行进一步的语句。考虑一下您希望该声明的位置...

没有完整回答,因为这听起来像是作业!

只是不要使用 return。 使用 stringReverse(&stringa[1]); 而不是 return stringReverse(&stringa[1]);

因为 'return' 语句正在使用 return 一个值。但是你的函数是void类型的,也就是说return什么都没有,不需要。