Advertisement

C/C++语言中的static特性及其区分

阅读量:
复制代码
    static int j;
    int k=0;
    
    void fun1(void)
    {
    static int i=0; //注释①
    i++;
    }
    
    void fun2(void)
    {
    j=0; //注释②
    j++;
    }
    
    int main()
    {
    for(k=0; k<10; k++)
    {
    fun1();
    fun2();
    }
    return 0;
    }
    问:i=? j=?
    
    
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
      
    

解析

注释一 :static int i=0 注释二:j=0
这个定义与普通的int i=0不同,加了static后,这个i会存放在静态数据区,只能被初始化一次,在第一次调用fun1()时,创建i并

全部评论 (0)

还没有任何评论哟~