C语言变量定义和声明的区别

变量的声明有两种情况
(1) 一种是分配内存空间的(声明)。例如:int a在声明的时候就已经分配了内存空间。
(2) 另一种是不需要分配内存空间的(声明)。例如:extern int a其中变量a是在别的文件中定义的。

第一种是"定义性声明",或者称为”定义",第二种是"引用性声明"。
可以理解为声明中包含着定义,但是并非所有的声明都是定义,例如:int a既是声明,同时又是定义。然而对于extern a来讲它只是声明不是定义。

定义和声明的区别
一般的情况下我们常常这样叙述,把分配内存空间的声明称之为"定义",把不需要分配内存空间称的声明之为"声明"。

初始化和赋值
给变量第一次赋值叫初始化,之后的赋值叫赋值

总结

extern int a; //声明

int b;	//定义

int b=1;	初始化

b=2;	//赋值

//另外在定义的时候也可以初始化,也就是我们常用的写法
int c=3;

你可能感兴趣的:(C/C++/STL)