把建立存储空间的变量声明称定义;
不需要建立存储空间的声明称为声明;
c 为例, 在函数中出现的对变量的声明**(除了用 extern 声明的以外)**都是定义 在函数中对其他函数的声明不是函数的定义
详细见 c 程序设计-谭浩强 196-197 页
extern: 是对外部变量作用域的扩展,可以在本文件扩展,
int main(){
extern a;
}
...
int a;
void e(){...}
还可以通过 extern a 的声明在 file2 文件使用,但是在 file2 影响的 a 也会反馈到 file1 中. 而不想别的文件调用,只需要加 static,使得局限于 file1 文件中。
这样道理同函数,但需要知道的是extern v(int a); 可以省略,即 v(int a);,也就是说函数默认就是外部函数,加了 static 是内部函数,不能被其它文件引用,并且又叫静态函数
