• static 变量


      被static 修饰的变量全部称为静态变量。所有的静态变量全部存储在静态存储区。按静态变量定义的位置不同,又分为全局静态变量和局部静态变量。

      1)全局静态变量

        在全局变量的说明前加上static,就是全局静态变量。实际上全局变量全部存储在静态存储区(不管有木有加上static,全局变量都是存储在静态存储区)。

            但二者还是有区别的,区别在于作用域的扩展上。非静态的全局变量作用域可用extern扩展到组成源程序的多个文件,而静态全局变量的作用域只限于本文件。

             对于static修饰的函数也是。

          2)局部静态变量

        指的是在某个函数中用关键字static定义的变量,这种变量的作用范围它的函数中起作用,但是它存储在静态存储区中。一个函数在返回时将其所占有的内存

            交还给系统,但如果这个函数中定义有静态变量,函数在返回时这个静态变量不会被释放,仍然保存它的值,如果再次调用这个函数时,就可以直接使用这个保

           存下来的值。

           3)默认初始化为0

        其实全局变量也具备这一属性,因为全局变量也存储在静态数据区。在静态数据区,内存中所有的字节默认值都是0x00,某些时候这一特点可以减少程序员

           的工作量。

      同时可以参考这个,更详细:http://www.cnblogs.com/stoneJin/archive/2011/09/21/2183313.html

  • 相关阅读:
    csp-s模拟103
    csp-s模拟102
    csp-s模拟101
    csp-s模拟100
    csp-s模拟99
    csp-s模拟98
    csp-s模拟97
    csp-s模拟96
    csp-s模拟95
    csp-s模拟94
  • 原文地址:https://www.cnblogs.com/ATMvip/p/3636817.html
Copyright © 2020-2023  润新知