首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

》》有关全局变量的有关问题

2012-07-16 
求助》》有关全局变量的问题[codeC/C++][/code]#includeiostreamusing namespace stdint value10int f

求助》》有关全局变量的问题
[code=C/C++][/code]
#include<iostream>
using namespace std;
int value=10;
int func()
{
++value;
return 1;
}

int main()
{
cout<<func()<<endl
<<value;
cout<<endl<<value;
return 0;
}

调试的时候监视value已经是11了啊;
为什么第一个 cout中的value的值依然是10,而第二个才能显示为11?



[解决办法]

C/C++ code
#include<iostream>using namespace std;int value=10;int func(){++value;return 1;}int main(){cout<<func()<<endl;cout<<value;cout<<endl<<value<<endl;return 0;}
[解决办法]
cout是从最右边到左边输出的,遇到的好多编译器都是这样的,做个实验就知了,比如cout<<i<<++i
[解决办法]
如果需要你所说的效果,分成2句写就解决了:
cout<<func()<<endl;
cout<<value;
[解决办法]
序列点问题,请参考http://topic.csdn.net/u/20110826/09/601ebe9c-c2ae-4d63-a4e2-506c618bb654.html

热点排行