外部变量

维基百科,自由的百科全书
跳转至: 导航搜索

在C语言中,外部变量是指在任意函数块外部定义的变量。与此相对,局部(自动)变量是在函数块中定义的变量。

举例 (C语言)[编辑]

文件 1:

  int GlobalVariable;         // 隐式声明
  void SomeFunction(void);        // 函数原型(声明)
 
  int main() {
    GlobalVariable = 1;
    SomeFunction();
    return 0;
  }

文件2:

  extern int GlobalVariable;  // 显式声明
 
  void SomeFunction(void) {       // 函数头(定义)
    ++GlobalVariable;
  }

这个例子里,变量 GlobalVariable 在文件1中定义。为了在文件2中使用同一个变量,它必须被声明。不管有多少个文件,全局变量只定义一次,但是必须在其他文件中声明

参见[编辑]