1 自动变量
声明语句:无特殊声明
作用:不加任何特殊声明所声明的变量。如果在函数外部声明,作用域为从函数声明处到程序结尾;如果在函数内声明,作用域为声明处到函数结尾,函数调用结束后,变量所占用的内存空间会被释放。
声明示例:int a;
2 外部变量
声明语句:extern
作用:可以在函数声明之前调用变量,或调用外部函数定义的外部变量。
声明示例:extern int a;
3 静态变量
声明语句:static
作用:如果希望函数调用完毕后,变量所占用的内存空间不被释放,可以使用静态变量。
声明示例:static int a;
4 寄存器变量
声明语句:register
作用:存放在CPU寄存器内部,而不是外部虚拟内存中的变量。不能使用取址运算符“&”求寄存器变量的地址。
声明示例:register int a;