本文共 800 字,大约阅读时间需要 2 分钟。
按照作用域分:
(1).全局变量 Globalvariabless在所有函数外部定义的变量叫全局变量作用范围:从定义位置开始到整个程序结束(换一种说法:函数调用全局变量,全局变量必须在被调用函数的上方)e.g:#include <stdio.h>void eg1(void){ printf("i = %d\n",i);//这里的i 在下方被定义}int i = 10;//Globalvariablevoid eg2(void){ eg1();printf("i = %d\n",i);//这里的i是Globalvariable 已被定义}int main(void){ eg2();return 0;}该程序会报错 无法识别 i把函数 eg1 放在 Globalvariable 下方就不会报错(执行顺序从上到下)(2).局部变量 Localvariable在一个函数内部定义的变量或者函数的形参 统称为局部变量作用范围:只能在定义的函数内部使用e.g: void eg(int i) { int j = 20; } //i & j 都是局部变量 i 又称之为 形参
(3).注意的问题
全局变量和局部变量的名称冲突e.g:#include <stdio.h>int i =10;//全局变量 i = 10void eg(int i)//局部变量 i{ printf("i = %d\n",i);}int main(void){ eg(8);//局部变量 i 被赋值8 变成实参return 0;}输出结果:i = 8全局变量和局部变量名称相同:Localvariable 会把Globalvariables屏蔽
转载于:https://blog.51cto.com/12431776/2053990