【问题标题】:invalid initializer in gbagba 中的初始值设定项无效
【发布时间】:2018-04-23 22:41:24
【问题描述】:

我是 Lino,我是这个社区的新手。基本上,我试图将数据保存到 GBA 的 GAMEPAK_RAM 中,并且指针不起作用。代码行是这样的:

#define GAMEPAK_RAM ((volatile uint8_t*)0x0E000000)

错误是这样的:

    In file included from source/main.c:2:0:
source/OpenEngine.h:8:21: error: invalid initializer
 #define GAMEPAK_RAM ((volatile uint8_t*)0x0E000000)
                     ^

有人可以帮助我吗? 如果需要其他信息,请告诉我

【问题讨论】:

  • 你使用 GAMEPAK_RAM 的代码是什么?
  • 您的代码没有在任何地方定义或使用 GAMEPAK_RAM,因此它不应该给出与 GAMEPAK_RAM 相关的错误。
  • 噢噢噢!我使用 GAMEPAK_RAM:
  • 无符号短 *SaveMemory[0xFFFF] = GAMEPAK_RAM;

标签: c game-boy-advance devkitpro


【解决方案1】:
unsigned short *SaveMemory[0xFFFF] = GAMEPAK_RAM;

这与:

unsigned short *SaveMemory[0xFFFF] = ((volatile uint8_t*)0x0E000000);

SaveMemory 是一个数组,((volatile uint8_t*)0x0E000000) 是一个指针。您不能将数组设置为等于指针,因此会出现错误。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-21
    • 1970-01-01
    • 1970-01-01
    • 2013-03-07
    • 2020-07-20
    • 2012-12-24
    相关资源
    最近更新 更多