我從互聯網上得到了這段代碼,但我無法得到整個代碼。例如 if(*str)
。這個代碼是什麼意思?還可以返回一個字符串?我認爲,在主陣列可以在一個函數直接改變 但在這裏,它被送回..反向使用遞歸的字符串
#include<stdio.h>
#define MAX 100
char* getReverse(char[]);
int main(){
char str[MAX],*rev;
printf("Enter any string: ");
scanf("%s",str);
rev = getReverse(str);
printf("Reversed string is: %s\n\n",rev);
return 0;
}
char* getReverse(char str[]){
static int i=0;
static char rev[MAX];
if(*str){
getReverse(str+1);
rev[i++] = *str;
}
return rev;
}