外部静态声明-K&R2

时间:2018-09-02 17:16:38

标签: c static language-lawyer declaration

我正在阅读K&R的“ The C Programming Language”第二版,并在第83页的第4.6节“静态变量”中,K&R状态:

  

应用于外部变量或函数的静态声明,   将对象的范围限制为源文件的其余部分   

K&R确实通过给外部静态声明赋予错误的语义而在这里犯了错误吗?将static应用于外部变量或函数不会改变范围。在我看来,以上句子与第80页第4.4节“范围规则”中的句子完全相同:

  

外部变量或函数的作用域从此开始   声明到正在编译文件的末尾。

1 个答案:

答案 0 :(得分:1)

在第227页,K&R描述了两种范围:词法范围和与外部链接关联的范围。因此,他们使用“范围”作为比当前C标准更通用的术语。它们的词法范围是当前C标准所称的“范围”,而范围的更广泛使用是当前C标准所称的链接。