声明,定义初始化

1 变量的声明,定义和初始化,是三个不同的概念。

extern int a    声明a变量,不是定义,不给a变量分配内存空间
int a           声明a变量,也是定义a变量,分配a变量内存空间
int a=3 声明并定义a变量,分配给a变量内存空间,同时给a变量初始化值为3 

不带初始化的定义:如 int a,带有静态存储持续时间的变量会被隐式初始化为 NULL(所有字节的值都是 0),其他所有变量的初始值是未定义的。

链接:https://www.jianshu.com/p/a13e4a79ea94
 
2
声明一个变量只是将变量名标识符的有关信息告诉编译器,使编译器“认识”该标识符,但声明不一定引起内存的分配。而定义变量意味着给变量分配内存空间,用于存放对应类型的数据,变量名就是对相应的内存单元的命名。
 
在C++程序中,大多数情况下变量声明也就是变量定义,声明变量的同时也就完成了变量的定义,只有声明外部变量时例外。
 
https://blog.csdn.net/chaipp0607/article/details/59110710

猜你喜欢

转载自www.cnblogs.com/8335IT/p/11008815.html