/* 0xFFFFFFFF * 256*/
#define test_256X0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, 0xFFFFFFFF, ... 0xFFFFFFFF
编译后,const数组放在“.rwdata”部分而不是“.rodata”部分,我不知道为什么。
在谷歌和搜索stackoverflow站点之后,没有指定答案。有谁知道“将常量数据放入非只读部分”时为什么或如何要求编译器(或链接器)输出警告消息?谢谢。
PS。我通过添加属性((section(".rodata")))解决了我的问题
__attribure__((section(".rodata"))) volatile const int TEST_ro[512] = {test_256X, test_256X};
PS。我将 linaor-gcc 编译器用于 arm 核心