ошибка: функция возвращает адрес локальной переменной
Я начинаю с C и учусь самостоятельно. Я создаю следующую функцию:
char *foo(int x){
if(x < 0){
char a[1000];
char b = "blah";
x = x - 1;
char *c = foo(x);
strcpy(a, b);
strcat(a, c);
return a;
}
blah ...
}
Я в основном пытаюсь вернуть добавленную строку, но я получаю следующую ошибку:
& quot; ошибка: функция возвращает адрес локальной переменной & quot ;, есть предложения, как это исправить?