读书人

请问一个小白c++有关问题

发布时间: 2013-04-07 12:50:11 作者: rapoo

请教一个小白c++问题
int& co()
{
int x = 10;
cout << x << endl;
return x;
}
void main(void)
{
int a = co();
cout << a << endl;
}

为什么打印出来:
10
4200665
Press any key to continue

但是去掉co函数里面的cout语句打印出来就是:
10
Press any key to continue

虽然局部变量被释放,不加打印语句仍然可以获得局部变量内存区域的值,为什么加上打印语句就不能取得10了呢?
难道打印语句对局部变量内存区域进行了操作? c++
[解决办法]
vs2008下会输出 10 10

读书人网 >C++

热点推荐