重複の可能性:
ローカル変数のメモリにそのスコープ外でアクセスできますか?
私はC++で次のコードを持っています
int* foo()
{
int myVar = 4;
int* ptr = &myVar;
return ptr;
}
int main()
{
printf("val= %d", *foo());
return 0;
}
私が得る出力は次のとおりです。
val = 4
私の質問は、 myVar はローカル変数であるため、関数が戻った後に消えてはいけませんか? それへのポインタもヌルポインタであってはなりませんか?