C语言中的局部变量和全局变量
Posted 一只学习的猫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中的局部变量和全局变量相关的知识,希望对你有一定的参考价值。
C语言中所有的变量都有自己的作用域。C语言中的变量,按作用域范围可分为两种,即局部变量和全局变量。
1 局部变量
局部变量也称为内部变量。局部变量是在函数内作定义说明的,其作用域仅限于函数内, 离开该函数后再使用这种变量是非法的。
对于局部变量作用域的几点说明:
1)主函数中定义的变量也只能在主函数中使用,不能在其它函数中使用。同时,主函数中也不能使用其它函数中定义的变量。因为主函数也是一个函数,它与其它函数是平行关系。这一点是与其它语言不同的,应予以注意。
2) 形参变量是属于被调函数的局部变量,实参变量是属于主调函数的局部变量。
3) 允许在不同的函数中使用相同的变量名,它们代表不同的对象,分配不同的单元,互不干扰,也不会发生混淆。
4)在复合语句中也可定义变量,其作用域只在复合语句范围内。
2 全局变量
**全局变量也称为外部变量,它是在函数外部定义的变量。**它不属于哪一个函数,它属于一个源程序文件。其作用域是整个源程序。在函数中使用全局变量,一般应作全局变量说明。 只有在函数内经过说明的全局变量才能使用。全局变量的说明符为 extern。但在一个函数之前定义的全局变量,在该函数内使用可不再加以说明。
如果同一个源文件中,外部变量与局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即它不起作用。
以上是关于C语言中的局部变量和全局变量的主要内容,如果未能解决你的问题,请参考以下文章