全局变量的存储类型
在函数外部定义的变量是全局变量,它的作用域是从变量的定义点开始,到本程序文件的末尾。全局变量分为两种:1.extern声明的变量 2.static声明的变量。 当未对全局变量指定存储类别时,隐含为extern类别。用extern和static声明的全局变量都是静态存储方式(存放在静态存储区),都是在编译时分配内存的。
1.extern声明的全局变量
用extern声明的全局变量,可以扩展到全局变量的作用域。如果全局变量不是在文件的开头定义,其有效作用范围时从变量的定义点到程序文件的结束。如果在定义 点之前的函数想用该全局变量,则应该再引用之前用关键字extern对该变量做“外部变量声明”,表示该变量是一个已经定义的全局变量。这样就可以从声明处起合法的使用该全局变量。例:
#include <stdio.h>
void fun(void)
{
extern int x,y;
Int a=