本博客主要内容为 “小甲鱼” 视频课程《带你学C带你飞》【第一季】 学习笔记,文章的主题内容均来自该课程,在这里仅作学习交流。在文章中可能出现一些错误或者不准确的地方,如发现请积极指出,十分感谢。
也欢迎大家一起讨论交流,如果你觉得这篇文章对你有所帮助,记得评论、点赞哦 ~(。・∀・)ノ゙
1. 作用域
上一讲我们是从变量的作用域角度将变量划分为局部变量和全局变量,这是从空间的角度来分析的。我们发现当变量被定义在程序的不同位置时,它的作用范围是不一样的。这个作用范围就是我们所说的作用域。
那么 C 语言编译器可以确认 4 种不同类型的作用域:代码块作用域、文件作用域、原型作用域和函数作用域。
1.1 代码块作用域(block scope)
在代码块中定义的变量具有代码块作用域,他的作用范围从变量定义的位置开始,到标志该代码块的右大括号 “}” 截止。
尽管函数的形式参数不在大括号内定义,但其同样具有代码块作用域,隶属于包含函数体的代码块。
比如执行如下的代码