C语言中全局变量与局部变量

冷暖自知 提交于 2020-03-06 08:53:44

C语言中全局变量与局部变量的区别是什么呢?我们怎么定义全局变量与局部变量呢。
一、全局变量
以下定义方法中定义的x就是被定义为了全局变量,全局变量可以被全局内的函数引用。

#include <stdio.h>
int x=123;
int main()

同时定义了全局变量x=123后任然可以再定义一个局部变量x=456。此时程序不会出错。例:

#include <stdio.h>
int x=123;
int main()
{
	int x=456;
	printf("x=%d",x);
	return 0;
}

运行结果:
在这里插入图片描述
二、局部变量
局部变量只能定义在函数内不能定义在函数外。局部变量有以下两种定义方式:

#include <stdio.h>
int main(int x)//定义局部变量x
{
	int y=1;//定义局部变量y并将y赋值为1
	x=2;//将x赋值为2
	printf("x=%d,y=%d",x,y);//输出x和y的值
	return 0;
}

运行结果:
在这里插入图片描述
三、全局变量和局部变量的一些特性的总结:1.全局变量因为可以被所有函数引用,所有他的生命周期长于局部变量。生命周期变长后占用内存也会更多,因为无法及时的释放。2.当全局变量和局部变量名字相同时取值取局部变量(从上面的例子中可以看出)原因是全局变量的优先级低于局部变量。
----------------------------------分割线----------------------------------
本人承诺以上文章为本人编写,绝非复制粘贴。写在这里一是为了防止以后自己将知识点遗忘,二是为了和大家分享我自己对这个知识点的理解和认识。如果我的文章中有错误希望看到后可以指正,感激不尽!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!