变量的作用域与生命周期

初识C语言


变量的作用域与生命周期

变量可以分为全局变量和局部变量

大括号外的变量被称为全局变量,定义在大括号内的被称为局部变量。

全局变量可以在全体中使用,局部变量只能在内部使用。

若全局变量与局部变量定义名称相同,则在局部变量中调用函数时会优先使用局部变量中的函数。

//全局变量
#include<stdio.h>
int a =10;
int main()
{
   printf("%d",a);
   //这里的a是全局变量
}
//局部变量
#include<stdio.h>
int a =10;
int main()
{
   printf("%d",a);
   //这里的a是局部变量
}
//其他例子
#include<stdio.h>
int a =10;
int main()
{
  {
  	int a =10;
  	printf("%d",a);  //a = 10; a是局部变量 
  }
  prinf("%d",a);  //这里会报错,因为局部变量的作用域只
}

全局变量与局部变量在内存中的区别:

  • 全局变量保存在内存的全局存储区中,占用静态的存储单元;
  • 局部变量保存在栈中,只有在所在函数被调用时才动态地为变量分配存储单元;

一、作用域是什么?

上代码直接

1. #include <stdio.h>
    int main()
  {
      int i = 0;
 	 for (i = 0; i < 10; i++)
		{
			printf("%d ", i);
		}
		printf("\n");
		printf("%d", i);
   }  //结果 0 1 2 3 4 5 6 7 8 9
     //     10
2.  #include <stdio.h>
    int main()
  {
      
 	 for (int i = 0; i < 10; i++)
		{
			printf("%d ", i);
		}
		printf("\n");
		printf("%d", i);  //程序会报错,因为局部变量的作用域只存在其所在的括弧内
   }  //结果 0 1 2 3 4 5 6 7 8 9
     //    报错
    

二、生命周期是什么?

1.局部变量的生命周期:进入作用域生命周期开始,出作用域生命周期结束。
2.全局变量的生命周期是:整个程序的生命周期。

代码如下(示例):

#include<stdio.h>
int main()
{
	int i =0;
	for (i = 0; i < 10; i++)
	{
		printf("%d ", i);
	}
	printf("\n");
	printf("%d", i);
	return 0;
}  //结果 0 1 2 3 4 5 6 7 8 9
   //    10


总结

作用域

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

  1. 局部变量的作用域是变量所在的局部范围。
  2. 全局变量的作用域是整个工程

生命周期

   变量的生命周期指的是变量的创建到变量的销毁之间的一个时间段
  1. 局部变量的生命周期是:进入作用域生命周期开始,出作用域生命周期结束。
  2. 全局变量的生命周期是:整个程序的生命周期
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值