c++ - 强制常量数据保存在 RAM 而不是 ROM
问题描述
是否可以强制将 const 值保存在 RAM 而不是嵌入式设备上的 ROM 中,而不是作为对编译器的建议。我想保持从 RAM 读取的速度,但要确保值在代码中的某些地方没有改变?
解决方案
您可以强制将变量放在数据部分(或任何地方)并告诉编译器它不会被修改:
const int variable __attribute__((section(".data")));
指示节的方式取决于编译器,但通常__attribute__
是有效的方法。
要知道您想要的部分,请检查您的启动代码,在那里您将看到它们的地址和大小(或检查链接器)。
推荐阅读
- database - MongoDB 排序顺序和唯一字段
- python - 如何从文本文件中删除停用词?
- winforms - Powershell Windows 窗体列表框选择验证
- duplicates - 基于 Tableau Prep 中的两个字段进行重复数据删除
- python - Python - 遇到 x_test y_test 拟合错误
- mysql - SQL 选择大小写为
- vba - 即使 ADODB 确认相同的字段计数也无法合并两个表
- python - Python 挑战 3 级
- php - 当用户卸载您的 wordpress 插件时,有没有办法实现弹出窗口?
- python - SFrame 连接