【发布时间】:2010-07-30 15:45:03
【问题描述】:
可能重复:
Why global and static variables are initialized to their default values?
发生这种情况的技术原因是什么?所有平台的标准都支持它吗?如果静态变量没有显式初始化,某些实现是否有可能返回未定义的变量?
【问题讨论】:
-
投票重新打开,因为这个问题还询问是否某些编译器不会将静态变量归零。答案是肯定的!一些特定领域的编译器不符合所有标准。例如,在 TIGCC(TI-89/92/V200 计算器的 C 编译器)中,具有显式初始化的全局变量(例如 `static int high_score = 0;')将在程序运行期间保留(除非它已存档在闪存中),提供了一种简单但低俗的方式来保留程序设置。
标签: c