1 变量类型
1.1 自动变量特点
(1)自动变量就是在函数内部定义的变量,只在内部有效
(2)所以允许其他函数定义相同的变量
(3)他们都有自己的区域性,没有连接性
(4)自动变量分配内存就压栈,函数返回时退栈
(5)一般不作专门说明的局部变量,均是自动变量,比如static说明
(6)自动变量使用栈机制使用内存
1.2 静态变量static
1.2.1 局部静态变量
(1)内存中的位置:静态存储区
(2)未经初始化的全局静态变量会被程序自动初始化为0(自动对象的值是任意的,除非他被显示初始化)
(3)当static用来修饰局部变量的时候,它就改变了局部变量的存储位置,从原来的栈中存放改为静态存储区,但是局部静态变量在离开作用域之后,并没有被销毁,而是仍然驻留在内存当中,值也保留,等程序下次再去执行这个函数,去使用它
(4)当static用来修饰全局变量的时候,它就改变了全局变量的作用域(在声明他的文件之外是不可见的),但是没有改变它的存放位置,还是在静态存储区中。
1.2.2 全局静态变量
(1)不会被其他文件所访