定义全局变量还是局部变量(局部变量与全局变量)
一、局部变量
在函数内部定义或在函数的形参,称为局部变量。
#include<stdio.h>
void fun(int i){
int j = 50;
printf("i = %d\n",i);
printf("j = %d",j);
}
int main(void){
fun(20);
return 0;
}
局部变量的使用范围:只在本函数内部使用。
在上述代码中fun函数定义的变量i,j,只能在函数fun中使用。如在main函数中打印i,j变量,会有报错信息。
二、全局变量
函数外定义的变量,称为全局变量。
#include<stdio.h>
int a = 100;
void fun(int i){
int j = 50;
printf("i = %d\n",i);
printf("j = %d\n",j);
printf("a = %d",a);
}
int main(void){
fun(20);
return 0;
}
全局变量作用范围:从定义的位置开始到整个程序结束。
上述示例中,定义的变量a为全局变量,可以在fun函数和main函数中使用
三、局部变量与全局变量命名冲突
在函数中,如果定义的全局变量的名字和局部变量的名字相同,此时使用的是局部变量。
#include<stdio.h>
int a = 100;
void fun(int i){
int j = 50;
int a = 200;
printf("i = %d\n",i);
printf("j = %d\n",j);
printf("a = %d",a);
}
int main(void){
fun(20);
return 0;
}
上述示例中,定义全局变量a=100,在fun函数中定义局部变量a=200,此时打印a的值,最终结果为200。
四、总结
(1)局部变量使用范围:只在本函数内部使用。
(2)全局变量作用范围:从定义的位置开始到整个程序结束。
(3)全局变量与局部变量名字相同,使用的是局部变量。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com