用static声明局部变量

来源:互联网 发布:网络信息安全涉及 编辑:程序博客网 时间:2024/04/30 12:51

 如果你希望某个局部变量的值在函数变量调用结束后不消失而保持原值,即占用的存储单元不释放,在下次函数调用时,该变量已有值,就是上次函数调用结束的值。这时就应该指出该局部变量为“静态局部变量”,用关键字static进行声明。

 

 

f(int a)

{

     auto int b = 0;

     static int c = 3;

     b = b+1;

     c = c +1;

     return (a+b+c);

}

 

main()

{

   int a = 2;

   for(i = 0; i < 2;i++)

       printf("%d",f(a));

}

 

 

 

运行结果为:

 

7    8     9

原创粉丝点击