我正在尝试递归并尝试这个练习来打印单词后缀.我究竟做错了什么?
#include <stdio.h>
#include <stdlib.h>
void recursivePrint(char* x){
if (*x = '\0')
return;
else
recursivePrint(x++);
printf("%c", *x);
}
int main()
{
char x[10] = "Hello";
recursivePrint(x);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
=是一个赋值运算符.并==用于比较.更改
if (*x = '\0')
Run Code Online (Sandbox Code Playgroud)
至
if (*x == '\0')
Run Code Online (Sandbox Code Playgroud)
编辑:
要看第一个角色,
更改
void recursivePrint(char* x){
if (*x == '\0')
return;
else
recursivePrint(x++);
printf("%c", *x);
}
Run Code Online (Sandbox Code Playgroud)
至
void recursivePrint(char* x){
if (*x == '\0')
return;
else
recursivePrint(x+1);
printf("%c", *x);
}
Run Code Online (Sandbox Code Playgroud)