1.本地变量:定义在函数内部的变量就是本地变量,平时定义的参数也属于本地变量。其中函数也属于本地变量。
2.变量的生存期:从变量开始作用到结束作用的这段时间。
3.变量的作用域:变量从开始访问到结束访问的范围。
4.对于本地变量来说生存期和作用域范围相同都是在 花括号内——块。
5.本地变量的规则:
- 本地变量是定义在块内的:
- 它可以是定义在函数块内
int main() { int a; int b; }
- 也可以定义在语句块内
int main() { int a; if(a>0) { int i; } }
- 甚至可以随便拉一对大括号来定义
int main() { { int i; } }
- 在程序运行进入这个块之前,其中的变量不存在,离开这个块之后,其中的变量就消失了
- 在块外面定义的变量在块里的花括号仍然有效
- 若块里面定义了和外面相同的变量名则会掩盖了外面的变量
- 不可以在一个块内定义相同的变量
- 本地变量不会被默认初始化
- 参数在进入函数的时候就被初始化了
6.当自定义的函数没有参数时:
void f (void);明确的告诉编译器函数没有返回值
void f (); 在传统的C中,它表示f函数的参数未知