C 语言中常用的变量类型包括以下几类: 局部变量(自动变量)、外部变量(全局变量)、静态变量和寄存器变量(寄存器变量不常用,因此不做整理)。
1 局部变量
局部变量也称为自动变量,是在函数内或程序块内定义的变量,是一种“临时”的变量,随着函数(或程序块)的执行而生成,随着函数(或程序块)的退出而消失。局部变量的作用域仅限于定义它的函数或者程序块。
例1:在函数内定义的局部变量
void function(void)
{
int x; /* 变量x的作用域仅限于funciton函数 */
}
例2:在程序段内定义的局部变量
while(1)
{
int x; /* 变量x的作用域仅限于while语句 */
}
2 外部变量
外部变量也称为全局变量,是定义于所有函数之外的变量,其作用域是其定义(或声明)之后的所有函数。函数可以访问外部变量的前提是在该外部变量的定义(或声明)在该函数定义或声明之前。外部变量的定义与普通变量一样,不同之处是:外部变量只能初始化一次!外部变量通过关键字extern声明。
例3:外部变量定义及使用
int x = 0; /* 定义并初始化外部变量x */
void function1(void)