重複の可能性:
Cの関数からローカル変数を返す
これについて考えれば考えるほど、なぜこれがそれほど良い考えではないのか確信が持てなくなります...コンパイラは、関数内からの自動変数が呼び出し元に戻ることについて不平を言います。例えば:
char * foo() {
char bar[11];
fgets(bar, 10, stdin);
return bar;
}
対:
char bar[11];
char * foo() {
fgets(bar, 10, stdin);
return bar;
}
私はおそらくあまり意味がありません。内部にポインタ宣言があるという問題を完全には理解していません。呼び出し元は単にメモリアドレスを想定しているだけではないでしょうか。