【发布时间】:2018-12-22 02:28:50
【问题描述】:
“静态全局变量”和“静态全局变量”有什么区别? C语言中的“非静态全局变量”?
请举例说明它们有何不同。
(因为,全局静态变量和简单全局变量在整个程序中都保持活动状态,并且可以在任何块中使用。我很困惑如何区分它们。) 有人可以用代码解释一下吗?
【问题讨论】:
-
在您最喜欢的 C 资源上简单阅读一下关键字
static就会发现答案。 -
基本上,一个
static全局变量不能被它定义的文件之外的名字引用;非static全局变量可以在其他源文件中按名称引用,而不是在它定义的源文件中。How can I useexternto share variables between source files? 相当彻底地涵盖了非静态情况(甚至是冗长的)。static的情况很简单——变量可以在定义它的源文件中按名称访问,而不是在任何其他源文件中。 -
如果你的困惑是英语:“global”和“[non-]static”这两个词可以按任何顺序排列,那么句子的意思是一样的。
-
@Jonathan-Leffler,英语可能是他的困惑。如果您进行了编辑,您能否恢复该部分?
-
您可以撤消它。我不认为这是一个问题,但如果你认为是,你可以解决它。