#include <iostream>
using namespace std;
int* JustATest()
{
int x;
x = 5 + 10;
return &x;
}
void main()
{
int * ptr = JustATest(); //return address
cout << *ptr << endl; //the output is 15
}
当函数完成执行时,变量x
应被销毁(解除分配),然后指针ptr
指向内存中的哪一个?
变量x是在ptr指向的主堆栈帧中分配的,但它与被破坏的变量或同一个变量相同的存储单元不同?