C语言中的全局变量
在函数内部的定义的变量只有在程序运行到该函数的时候才会出现,等这个函数运行结束以后就会消失。全局变量是定义在函数外面的变量,生命周期与整个程序的声明周期一样长
#include<stdio.h>
int globalV=12;
void f();
int main()
{
printf("in %s globalV=%d\n",__func__,globalV);
f();
printf("in %s globalV=%d\n",__func__,globalV);
return 0;
}
void f()
{
printf("in %s globalV=%d\n",__func__,globalV);
globalV+=2;
printf("in %s globalV=%d\n",__func__,globalV);
}
全局变量的注意点:
- 没有初始化的全局变量会得到0值,指针会得到NULL值
- 只能用编译时刻已知的值来初始化全局变量
- 他们的初始化发生在main函数之前