erro: função retorna endereço da variável local
Eu sou iniciante com C e estou aprendendo sozinho. Eu estou criando a seguinte função:
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 ...
}
Eu estou basicamente tentando retornar uma string anexada, mas recebo o seguinte erro:
"erro: função retorna endereço da variável local", alguma sugestão, como corrigir isso?