サブ関数を 2 回呼び出しますが、2 回目は前の呼び出しからの値でローカル変数を出力できます。これを Linux でテストしました。2 番目の文字列が前の文字列と同じアドレスを指すのはなぜですか? それを避ける方法は?どうもありがとう。
#include <stdio.h>
int main(){
second();
second();
return 0;
}
int second (){
char tmp[40];
printf("%s \n", tmp);
strcpy (tmp, "set");
return 0;
}