C++ 全局变量与局部变量
全局变量:
- 一个变量在整个程序都是可见的成为全局变量;
- 全局变量在主函数
main()
运行之前就存在了; - 全局变量通常在程序顶部定义,但是也可以在程序中间的任何地方定义全局变量;
- 默认有初始化,初始化为0;
- 定义之后整个程序都可知,在全局变量定义之前所有函数是不知道该变量(即在该变量之前的所有函数是不可访问该变量的)。
局部变量:
- 一个变量只能在一个函数中可见的成为局部变量。
- 局部变量的类型修饰是
auto
,表示该变量在栈中分配空间,但是一般情况下都会省略auto
; - 可以定义任何名字;
- 局部变量存放在栈区,所以函数退出时,局部变量也随之消失;
- 默认没有初始化,所以我们必须要给它显式初始化;