美文网首页
全局变量和静态全局变量

全局变量和静态全局变量

作者: calm_peng | 来源:发表于2019-04-14 23:59 被阅读0次

全局变量和局部变量是从变量的作用域的角度划分。
静态变量和动态变量是从变量的内存分配的角度划分。

全局变量本身就是静态存储方式,静态全局变量当然也是静态存储方式。这两者在存储方式上并无不同,区别在于非静态全局变量的作用域是整个源程序,当一个源程序由多个源文件组成时,非静态的全局变量在各个源文件中都是有效的。而静态全局变量则限制了其作用域,即只在定义该变量的源文件内有效,在同一源程序的其它源文件中不能使用它。

使用场景:防止全局变量在其他源文件中被使用
由于静态全局变量的作用域限于一个源文件内,只能为该源文件内的函数公用,因此可以避免在其他源文件中引起错误。

参考:
静态变量
动态变量
全局变量
局部变量

相关文章

  • c 静态全局变量

    static 与 全局变量当一个进程的全局变量被声明为static之后,它的中文名叫静态全局变量。静态全局变量和其...

  • C/C++ 中 static 的用法

    C语言: 1、静态全局变量:1、在全局变量前加上 static 关键字,即为静态全局变量2、静态全局变量在程序的数...

  • 全局变量和静态全局变量的区别

    相同点: 存储区域相同:全局变量和静态全局变量都存放在静态存储区。生命周期相同:全局变量和静态全局变量的都是在程序...

  • 5、static关键字

    全局变量(外部变量)的说明之前再冠以static 就构成了静态的全局变量。全局变量本身就是静态存储方式, 静态全局...

  • 菜鸟教程——iOS中static变量和全局、局部变量的区别

    全局变量即外部变量,如果前面再用static修饰就构成了静态的全局变量。 全局变量本身就是静态存储方式,静态全局变...

  • Objective-C中static、const和extern关

    一 static 1,修饰全局变量 在全局变量前加static,全局变量就被定义成为一个静态全局变量(全局变量和静...

  • 2018-01-23

    Static关键字用法 C语言中面向过程 静态全局变量 静态全局变量的作用:1.静态全局变量的作用域:不能被其他文...

  • static全局变量和普通的全局变量有什么区别?static局部

    解析: 全局变量(外部变量)的说明之前再冠以static就构成了静态的全局变量。 全局变量本身就是静态存贮方式,静...

  • 1、static const 全局变量 单利为什么用stati

    1)static,extern修饰全局变量 static修饰的全局变量只能在当前文件中使用 全局变量和静态全局变量...

  • static

    修饰全局变量 在全局变量前加static,全局变量就被定义成为一个全局静态变量 特点如下: 1)存储区:静态存储区...

网友评论

      本文标题:全局变量和静态全局变量

      本文链接:https://www.haomeiwen.com/subject/dboewqtx.html