c语言怎样声明和定义全局变量

Python011

c语言怎样声明和定义全局变量,第1张

定义在函数体外部的变量全局变量

定义全局变量你只要把变量定义在

所有函数外部即可。

要注意的是,全局变量只对它定义位

置以下的函数可见。

#include<stdio.h> 

void f1()

void f2()

int y=100

int main()

{

printf("%d\n\n",y)

//printf("%d\n",x)这不可以读x,x对main()不可见 

f1()

f2()

return 0

}

int x

void f1()

{

x=200

void f2()

{

printf("%d\n",x)

printf("%d\n",y)

}

1、记住一条就够了:在函数之外定义的变量就是全局变量。用static修饰的变量可以是全局的,也可以是局部的,所以说“用static修饰的变量是全局变量”是错误的。用static修饰的变量的生命周期与全局变量一样,但可见性仍分全局和局部。 2、全局变量在整个c文件中都能使用,而局部变量在其作用域内才能使用,举个例子: int f = 7// 这个是全局变量int myadd(int a, int b){int c = a + b// c是局部变量,只能在myadd中使用return c}int main(void){printf("%d\n", c)// 因为c是myadd中定义的局部变量,这里会报错。printf("%d\n", f)// f是全局变量,这句是正确的。}