【C语言】变量的作用域和生命周期

目录

作用域

 生命周期


作用域

定义:

        程序设计概念,一段程序代码中所用到的名字并不总是有效/可用的,而限定这个名字的可用性的代码范围就是这个名字的作用域。 

通俗来讲,一个变量在 哪里起作用(哪里可以使用)哪里就是它的作用域。

int main()
{
    int m = 20;
    printf("%d\n", m);  // m 在 printf 中使用,那么 printf("%d\n", m)就是它的作用域
    return 0;
}

1. 局部变量的作用域是变量所在的局部范围。

2. 全局变量的作用域是整个工程。

在同一工程中,当一个源程序想引用另一个源程序的变量时,需使用 extern 声明。

extern 数据类型 变量名;

引用   g_val   变量

注:执行性代码要写在 { } 里

#include<stdio.h>
int a=10;
printf("%d",a);    //是错误的,必须放在大括号里。变量的创建可以放在大括号外,但是执行性代码,如打 
                     印一句话,变量赋值等等,必须要放在大括号里
int main()
{
	int b = 20;
	printf("%d\n",b);
	return 0;
} 

 生命周期

定义:变量的生命周期指的是 变量的创建到变量的销毁之间的一个时间段。

1.局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。

                                    进入局部范围生命周期开始,出局部范围生命周期结束。

int main()
{
    {
        int m = 20;
        printf("%d\n", m);
    }
    printf("%d", m);// m 在这里不可使用,说明 m 的生命周期在出大括号的范围就结束了
    return 0;
}

2.全局变量的生命周期:整个程序的生命周期。

全局变量在整个工程任意地方都可以使用。

一个程序的 main 函数 就是他的生命周期  

因为一个程序从它的 main函数 开始执行一直到 return 0 结束,而全局变量在整个main函数都可以使用。

所以 程序的生命周期=全局变量的生命周期

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值