变量定义 --》为变量分配内存空间,还可以为变量制定初值。 一个程序中,变量有且只有一次定义。
变量声明: extern --》 向程序表明变量的类型和名字 ,从声明开始变量可见
定义也是声明 , 但是声明不是定义 ,
声明不会分配内存空间,
只是说明变量的定义在程序的其他地方 ,
声明可以多次 ,但定义只能一次 。
只有在
extern int ival = 10; 声明也是定义,具有初始化式。(声明只有在函数外部的时候才能有初始化式)
extern int ival = 10;
int ival ; // error : redefinition of ival.
extern int ival; //ok