先看一下简洁版的。
1.成功版
#include<stdio.h>
#include<windows.h>
char s[1000];
void reverse(char *s)
{
if (*s)
{
reverse(s+1);
printf("%c", *s);
}
return;
}
int main()
{
gets_s(s, 100);
reverse(s);
printf("\n");
system("pause");
return 0;
}
错误案例1.
输出:
错误案例2.
那++前置怎么样呢?
#include<stdio.h>
#include<windows.h>
char s[1000];
void reverse(char *s)
{
if (*s)
{
reverse(++s);
printf("%c", *s);
}
return;
}
int main()
{
gets_s(s, 100);
reverse(s);
printf("\n");
system("pause");
return 0;
}
总结:
1.++s 与s++ 不行
原因还不清楚,反思一下,不知道谁可以解决,共同进步?