gpt4 book ai didi

C - 保护持久设置

转载 作者:行者123 更新时间:2023-11-30 14:25:46 25 4
gpt4 key购买 nike

我有一个 C 程序,它始终使用硬编码的定义语句来进行一些设置。示例...

#define TRIGGER_TIMEOUT 50000

这效果很好。现在,此设置将变得可调整。示例...

g_ulTriggerTimeout = ReadEEPROM(TRIGGER_TIMEOUT_OFFSET);

如果检测到持久存储 (EEPROM),则将读入并使用该值。因此,我的安全文字值现在面临着被损坏的风险(无意中被写入更改)。我需要将此变量设置为常量,但我还需要从 EEPROM 读取初始值。这种情况通常如何解决?

最佳答案

恕我直言,这是可以改变规则的情况之一。

const int g_ulTriggerTimeout; //declare somewhere making sure it is in a writable section (see comment below from undur)

/* later */

//just for this assignment make it modifiable
*((int*) &g_ulTriggerTimeout) = ReadEEPROM(TRIGGER_TIMEOUT_OFFSET);

关于C - 保护持久设置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9994176/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com