C语言

局部变量 全局变量

2020-08-03  本文已影响0人  sakura579
#include <stdio.h>

int a,b;
void func()
{
    a = 100;
    b = 200;
}
void func2()
{
    printf("%d,%d\n",a,b);
}
main()
{
    int a=1,b=2;
    func();
    func2();
    printf("a=%d,b=%d\n",a,b);
}

结果是
100,200
a=1,b=2

可见此时全局变量变为100 200
但是局部变量屏蔽全局变量 输出的是1 2

执行func时因为a=100 b=200是执行语句 但它自己又没有定义a和b
所以引用全局变量a和b 从而全局变量变为100 200

上一篇下一篇

猜你喜欢

热点阅读