美文网首页iOS Blog
全局变量和静态全局变量的区别

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

作者: Zentopia | 来源:发表于2015-10-11 14:53 被阅读184次

相同点:

存储区域相同:全局变量和静态全局变量都存放在静态存储区。
生命周期相同:全局变量和静态全局变量的都是在程序结束后或者所属对象被释放后才被释放。

不同点:

作用域不同:全局变量的作用域是这个程序的所有源文件,而静态全局变量的作用域是声明该静态变量的源文件。

Tips:

  • static是一种存储类标识(这里的“类”与面向对象的“类”的定义不同),C族语言的存储类标识还有extern, auto和register。每个变量与函数都被其中一种存储类标识修饰,全局变量被extern修饰。
  • 全局变量的生命周期、静态全局变量的生命周期和静态局部变量的生命周期相同,都是在程序结束后才被释放。

相关文章

  • Objective-C添加类属性

    先回顾一下静态变量与全局变量的一些知识。 头文件中定义全局变量和静态变量的区别。 源文件中定义全局变量和静态变量的...

  • c 静态全局变量

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

  • C/C++ 中 static 的用法

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

  • 2018-06-14

    ///第一种情况,不加block的情况,全局,静态,和局部变量的区别:首先全局变量global_a和静态全局变量s...

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

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

  • 5、static关键字

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

  • 编程中的局部变量,全局变量,静态变量

    关于局部变量、全局变量与静态全局变量和静态局部变量的比较与分析和拓展: 首先要明白的是局部变量与其它三个有本质区别...

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

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

  • 2018-01-23

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

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

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

网友评论

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

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