变量的存储类别:主要针对时间属性,引出存储期概念。
存储期:静态存储期 和 动态存储期。
静态存储期:程序运行开始分配固定存储空间;
动态存储期:程序运行期间动态的分配和释放内存。
存储期有四种:自动的(auto),静态的(static),寄存器的(register),外部的(extern)。
自动变量:函数的形参,函数中定义的变量。默认情况即为自动变量。定义时若不赋初值,其值不确定
静态变量:函数结束时变量不会释放。注意:虽然不释放空间,但是静态变量不可被其它函数引用。定义时若不赋初值,系统将其初始化为0.
寄存器变量:一般情况下,变量是存放在内存中的(包括静态和动态存储方式)。存 放时需要的时间较长,寄存器变量存放非常快。通常不需要定义寄存器变量。
外部变量(全局变量):extern只做变量申明,而不是变量定义。只是对变量作用域的扩展。