我正在编写USB
引导加载程序的代码。当我编译代码时,我得到以下2个错误:
Invalid Initializer
错误涉及以下代码行:
static volatile usb_internal_sram_t sr;
static volatile usb_internal_sram_t usb_sram = &sr;
usb_control_t ctr;
static usb_control_t usb_ctrl = &ctr;
在有人建议malloc()
之前,这是一个嵌入式系统。建议不要动态内存分配,因为它会降低系统速度。因此,这就是我尝试以这种方式初始化struct
指针的原因。我认为这种方法没问题,但显然没有。有人有主意吗?提前谢谢!
答案 0 :(得分:2)
您缺少*
令牌,以将usb_sram
和usb_ctrl
个对象声明为指针。
答案 1 :(得分:0)
static volatile usb_internal_sram_t sr;
static volatile usb_internal_sram_t usb_sram = &sr;
你可能意味着
static volatile usb_internal_sram_t sr;
static volatile usb_internal_sram_t* usb_sram = &sr;