42.局部与全局
c语言的变量,按作用域范围可分为两种,即局部变量和全局变量。
局部变量也称为外部变量,它是在函数外部定义的变量。它不属于哪一个函数,它是属于一个源程序文件。其作用域是整个源程序。
#include<stdio.h>
int x = 1;
int fn1(int x){
int y,x;
z = 2;
y = x+z;
printf("y=%d\n", y);
return 0;
}
int main()
{
fn1(2);
int y = 10;
printf("x+y=%d" , y+x);
return 0;
}
任务:下面这段代码分别定义了全局变量int x=77和局部变量int x=10。
#include<stdio.h>
int x = 77;
void fn1()
{
printf("fn1(): x=%d\n", x);
}
int main()
{
int x = 10;
if(x>0)
{
int x = 100;
x /= 2;
printf("if语句内,x=%d\n", x);
}
printf("main方法, x=%d\n", x);
fn1();
return 0;
}
运行结果:if语句内,x=50
main方法内,x=10
fn():x=77
本文通过实例代码展示了C语言中局部变量和全局变量的区别,包括它们的作用域和生命周期。在代码中,全局变量intx被定义为77,而在main函数中,局部变量intx被初始化为10,并在if语句中重新定义为100,导致作用域内的值改变。最后,fn1()函数中访问到的全局变量x保持其原始值77,体现了全局变量在整个源程序中的可见性。
1287

被折叠的 条评论
为什么被折叠?



