C++ 中函数静态局部变量

来源:互联网 发布:淘宝店铺开通了 编辑:程序博客网 时间:2024/06/11 09:55

先看一段程序:测试环境VS2010


#include <iostream>using namespace std;int get_function_static(int i){static int i_test=i;return i_test;}int main() {for(int i = 0; i < 10; i++) {cout<<get_function_static(i)<<endl;}system("pause");return 0;}

结果:


输出结果是10个0而不是0123456789.这是为什么了呢?

因为函数内部static变量的初始化或者赋值操作只执行一次,即在第一次调用的时候进行初始化或赋值,然后再次调用不在执行赋值和初始化操作的语句。




0 0
原创粉丝点击