C语言变量的作用范围

来源:互联网 发布:mac怎么制作手机铃声 编辑:程序博客网 时间:2024/05/01 09:42

变量的作用范围

1 局部变量
  1.1 举例
    1.1.1 形式参数
    1.1.2 定义在函数体内的变量,也成为自动变量,由关键字auto说明,可以省略
    1.1.3 定义在复合语句中的变量
  1.2 定义在函数体内
  1.3 使用栈的原理进行分配内存的
2 全局变量
  2.1 定义在函数体外
  2.2 全局变量不初始化将自动赋值为0
  2.3 全局变量的作用域是从定义行开始的,到文件结束
3 局部变量与全局变量的关系
  3.1 局部变量与全局变量同名时,在子函数内全局变量不起作用
4 变量的生命周期
  4.1 局部变量
    4.1.1 开始:函数被调用
    4.1.2 结束:函数结束
    4.1.3 局部变量被释放后,之前对应的内存空间成为公共区域
  4.2 全局变量
    4.2.1 开始:主函数执行之前
    4.2.2 结束:主函数结束
  4.3 关键字
    4.3.1 auto:自动变量,局部变量
    4.3.2 static:静态
        4.3.2.1 加在局部变量之前
                4.3.2.1.1 延长局部变量的生命周期到整个程序运行结束
                4.3.2.1.2 原理:首先判断局部变量是否已经分配过空间,如果没有则进行分配;如果已经分配过了(上次调用函数后变量没有被释放),则不再分配空间。
                4.3.2.1.3 用途
                4.3.2.1.4 作用域还是在函数内部
        4.3.2.2 加在全局变量之前
                4.3.2.2.1 作用域为所在文件内部
1 0
原创粉丝点击