This question already has answers here:
Closed 2 years ago.
Difference between local scope and function scope
(5个答案)
C语言中块作用域和函数作用域的区别是什么?有人告诉我,在花括号内声明的任何变量都算作块范围内的变量,但是当我们声明函数时,它会以花括号开始和结束。我很困惑。

最佳答案

在C语言中,函数作用域是描述标签作用域的一个形式术语。标签在整个函数中都是可见的,不管它在该函数中的声明位置如何。标签是唯一具有这种不寻常属性的实体,因此需要对它们进行特殊类型的作用域。其他任何东西都不能有函数作用域。
变量不能有函数作用域。所有在本地声明的变量都具有块作用域。覆盖整个函数的最外面一对{ ... }也是一个块。

关于c - C中函数和块作用域之间的区别? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28574670/

10-15 07:07