首先是个人简单总结:
变量声明就是不分配存储空间,仅由关键字extern,变量类型和变量名称以及分号结尾的语句。
声明:
extern int a;
定义:
extern int a = 10;
int b;
int c = 10;
概念:
声明用于向程序表明变量的类型和名字。
定义用于为变量分配存储空间。同时可以对变量进行初始化。
不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern。关键字extern关键字只是说明变量定义在程序的其他地方。
区别:
变量可以声明多次,但是只能定义一次。
联系:
定义也是声明:当定义变量时我们声明了它的类型和名字。
声明也可以是定义,即extern声明含有初始化式,此时extern声明必须位于函数的外部。
以下代码是错误的:
正确的应该为: