我在嵌入式系统上工作,而不是 Windows 系统。
我声明:
static uint_8 i = 0;
所以 i 在开始时刻被定义为 0。
问题:重置后我重新定义为 0 还是它在 ram 地址上获得了垃圾信息?例如,我是否需要编写一个初始化函数来将 i 重新定义为 0?
谢谢
最佳答案
这取决于您的运行时库(如果有)。如果您有一个现有的运行时库,它可能会在启动时将您的静态数据初始化为零(在 main()
之前)。但是,某些嵌入式系统可能没有完整的运行时库支持,因此您可能必须自己执行此操作。
关于c - 嵌入式系统 C 重启后的静态重新定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11754839/