C语言 全局 局部变量及储存方式

局部变量: 定义在函数体内部的变量,作用域仅限于函数体内部。离开函数体就会无效。再调用就是出错。

关于局部变量的作用域还要说明以下几点:
(1)主函数也是一个函数,它与其他函数是平行关系。主函数中定义的变量也只能在主函数中使用,不能在其他函数中使用。同时,主函数中也不能使用其他函数中定义的变量。
(2)形参变量是属于被调函数的局部变量,实参变量是属于主调函数的局部变量。
(3)在不同函数中可以使用相同的变量名,它们代表不同的对象,编译器分配不同的单元,互不干扰。
(4)在复合语句中定义的变量其作用域只能在复合语句范围内。

全局变量: 定义在所有的函数外部定义的变量,它的作用域是整个程序,也就是所有的源文件,包括.c和.h文件。

根据变量的存在时间(生存周期)可以分成:静态存储动态存储

静态存储变量:在程序运行期间分配固定存储空间的变量 这种分配变量的方式叫做静态储存方式
动态存储变量:在程序运行期间根据需要进行动态分配存储空间的变量 这种分配方式叫做动态分配方式 ,动态储存变量的例子比如:函数的形参、自动变量(没有加static的局部变量)、函数调用的现场现场保护和返回值。

auto 变量
函数中的局部变量,如果不专门的声明为 static存储,都是动态分配存储<

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值