据说在C/C++中,局部变量将在函数结束时自动分配和释放。
据我理解,当被释放时,局部变量所持有的值也会被销毁!如果我错了,请纠正我。
考虑以下代码:
据我理解,当被释放时,局部变量所持有的值也会被销毁!如果我错了,请纠正我。
考虑以下代码:
void doSomething(int** num)
{
int a = 10;
*num = &a;
} // end of function and a will be destroyed
void main()
{
int* number;
doSomething(&number);
cout << *number << endl; // print 10 ???
}
请问有人可以为我澄清一下吗?
void main()
。 - wkl10
是因为该值尚未被其他内容覆盖。只是因为运气好看起来能正常工作。 - Gabe