我正在微控制器上编程一个模块,用于连接它的EEPROM以从那里接收一些用户数据.由于无法轻易覆盖EEPROM,我想返回const指向const数据的指针.
现在我的函数原型看起来像这样:
const struct userData const* getEEPROMDataAtIndex(uint32_t uidIndex)
而gcc告诉我duplicate 'const' declaration specifier [-Wduplicate-decl-specifier].我使用的每个const不应该有不同的效果吗?一个使指向数据不可变,另一个使接收指针不被重新定位?
您已经两次声明了struct const.由于将指针const设置为返回类型没有意义,只需删除其中一个const声明.如果你想使指针const(在返回类型中没有意义),你可以将const放在星号后面.