将字符串求反
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
//求反函数
char *reverse(char arry[], int N) {
int i;
//char str[10];
char *str;
str = (char*)malloc(N * sizeof(char));
for(i = 0; i < N; i ++) {
str[i] = arry[N - i - 1];
}
return str;
}
//
int main() {
int N;
char str[10];
gets(str);
N = strlen(str);
str = reverse(str, N);
puts(str);
}
就是 str = reverse(str, N);这里的str【10】 与 reverse(char *,int)有问题。如果把reverse()里面的str定义为str【10】,那再main函数中传参时又会矛盾。