读书人

分享一道笔试题目-关于static和extern

发布时间: 2012-11-03 10:57:44 作者: rapoo

分享一道笔试题目--关于static和extern变量的问题

using namespace std;int count = 3;int main(){int i, sum, count = 2;//输出main函数的count即为2//cout<<count<<endl;for(i = 0, sum = 0; i < count; i += 2,count++){//输出main函数的count即为每次循环加1//cout<<count<<endl;//该语句只执行一次,即只开辟一次内存空间所以每次循环//改变count都不会被重置为4static int count = 4;//static中的count//cout<<count<<endl;//static中的countcount++;//static中的count//cout<<count<<endl;if(i % 2 == 0){//全局的count,即为main函数上面的countextern int count;//全局的count,即为main函数上面的countcount++;//全局的count,即为main函数上面的count//cout<<count<<endl;//全局的count,即为main函数上面的countsum += count;}//static中的count//cout<<count<<endl;//static中的countsum += count;}//main函数中的countcout<<count<<' '<<sum<<endl;return 0;}

运行结果是4 20

具体的原因见代码注释,也可将注释掉的输出代码释放,查看运行的结果。

读书人网 >编程

热点推荐