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

全局变量与全局静态变量的区别: 
 (a)若程序由一个源文件构成时,全局变量与全局静态变量没有区别。 
 (b)若程序由多个源文件构成时,全局变量与全局静态变量不同:全局静态变量使得该变量成为定义该变量的源文件所独享,即:全局静态变量对组成该程序的其它源文件是无效的。 
 (c)具有外部链接的静态;可以在所有源文件里调用;除了本文件,其他文件可以通过extern的方式引用;

静态全局变量的作用: 
(a)不必担心其它源文件使用相同变量名,彼此相互独立。
(b)在某源文件中定义的静态全局变量不能被其他源文件使用或修改。
 (c) 只能在本文件中使用!具有内部链接的静态;不允许在其他文件里调用;
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
全局变量、局部变量静态全局变量静态局部变量是在编程中常见的变量类型,它们有以下区别: 1. 全局变量: - 全局变量是在程序的任何地方都可以访问的变量,它的作用域是整个程序。 - 全局变量在声明时会被初始化,如果没有显式初始化,则会被默认初始化为0或者空值。 - 全局变量的生命周期从程序开始到程序结束。 2. 局部变量: - 局部变量是在特定代码块或函数内部声明的变量,它的作用域仅限于声明它的代码块或函数。 - 局部变量在声明时不会被自动初始化,需要手动赋初值。 - 局部变量的生命周期从其所在的代码块或函数执行开始到执行结束。 3. 静态全局变量: - 静态全局变量全局变量类似,也是在整个程序中都可以访问的变量。 - 静态全局变量只能在声明它的文件内部访问,其他文件无法直接访问。 - 静态全局变量在声明时会被初始化,如果没有显式初始化,则会被默认初始化为0或者空值。 - 静态全局变量的生命周期从程序开始到程序结束。 4. 静态局部变量: - 静态局部变量是在函数内部声明的变量,但与普通局部变量不同,它的生命周期不随函数的调用而结束。 - 静态局部变量只会被初始化一次,在函数第一次被调用时初始化,之后保持其值不变。 - 静态局部变量的作用域仅限于声明它的函数内部。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值