static定义变量的值问题

static定义变量的值问题,第1张

static定义变量的值问题 static定义变量的值问题
   #include 
   int f(int x)
   {  
      static int y=1;
      x+=y;  
      y++;
      return x;
   }
   int main(void)
   {  
      int k;
      k=f(3);
      printf("%d %dn",k,f(k)); //%d和%d之间只有1个空格
      return 0;
   }
   //这题输出的结果是4 6
   //说明static定义的y在重新执行static int y = 1;后没有发生值的i变化
   //可能是因为static关键字将y定义到了静态存储区
   //在静态存储区的值由于某种性质不会轻易地发生变化

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5659283.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-16
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存