函数:全局,局部和静态变量

avatar
作者
筋斗云
阅读量:0

文章目录


你的点赞评论就是对博主最大的鼓励
当然喜欢的小伙伴可以:点赞+关注+评论+收藏(一键四连)哦~


🍊自我介绍

  Hello,大家好,我是小珑也要变强(也是小珑),我是易编程·终身成长社群一名“创始团队·嘉宾” ,现在我来为大家介绍一下有关嵌入式方面的内容。在进入介绍之前,可能有一些小伙伴不了解易编程·终身成长社群;想要进一步了解社群的小伙伴可以点击下方链接自行跳转至关于社群的介绍:

易编程·终身成长社群介绍 :
https://blog.csdn.net/weixin_74300052?spm=1011.2266.3001.5343
在这里插入图片描述


🍊全局变量

全局变量 :在函数外部定义的变量,我们叫作全局变量。 特点: (1)在本文件中的任何函数中都可以使用。----作用域 (2)在定义变量的时候,系统会申请内存空间,当main() 函数结束的时候,系统会回收全局变量对应的内存空间。----生命周期 (3)全局变量未初始化,值默认为0 

代码演示:

#include <stdio.h>  int global = 20; //全局变量   void do_global() { 	global++; 	printf("global = %d\n",global); 	return ; } int main() { 	do_global(); 	do_global(); 	do_global(); 	do_global(); 	return ; } 

输出结果:

global = 20 global = 21 global = 22 global = 23  

这是因为当main()函数结束的时候,系统才会回收全局变量的内存空间。

🍊局部变量

局部变量:在函数内部定义的变量,我们叫做局部变量。 特点: (1)只能在定义它的那个函数中使用,其他位置不能使用。----作用域 (2)在定义变量的时候,系统会申请内存空间,当定义该 变量的函数调用结束后,系统会回收局部变量对应的内存空间。 ----生命周期 (3)局部变量未初始化的时候,值默认为随机值。 

代码演示:

#include <stdio.h>  void do_local() { 	int t = 10; //局部变量 	t++; 	printf("t = %d\n",t); 	return ; } int main() { 	do_local(); 	do_local(); 	do_local(); 	return ; } 

输出结果:

t = 11; t = 11; t = 11; 

这是因为当定义该变量的函数调用结束后,系统就会回收局部变量的内存空间。

🍊静态局部变量

格式: 		static 数据类型 变量名; eg: 		static int c;  特点: (1)静态局部变量,可以改变原来变量的生命周期,当定 义该变量的函数调用结束后,系统不会回收对应的内存空 间,当main()函数结束后,内存会被回收。 (2)只能在定义它的那个函数内部使用,其他位置不能使用。 ----作用域 (3)静态局部变量未初始化,默认值为0. 

代码演示:

#include <stdio.h>  void do_local() { 	static int t = 10; //局部变量 	t++; 	printf("t = %d\n",t); 	return ; } int main() { 	do_local(); 	do_local(); 	do_local(); 	return ; } 

输出结果:

t = 10; t = 11; t = 12;  

  对于静态全局变量我们在后面的学习中会讲到!!!

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!