Получаю предупреждение Type assignment makes pointer from integer without a cast

При отладки получаю предупреждение 'Type assignment makes pointer from integer without a cast' На вот такой код:

typedef union{
    uint16_t data[4];
    struct{
    uint16_t    d1; 
    uint16_t    d2;
    uint16_t    d3; 
    uint16_t    d4;
    };
} Dim;

typedef struct {
    uint16_t    type;
    uint16_t    size;     
    uint32_t    adr;
    Dim         dim;
} _DimData;
 _DimData *DimData;

DimData = 0x810000;

программа работает но выдает ругается.

Как можно убрать предупреждение?


Ответы (1 шт):

Автор решения: Mikhailo

Компилятор предупреждает, что вынужден выполнить приведение типов - вдруг вы это написали по ошибке?

Чтобы явно указать ему, что вы знаете, что хотите, надо выполнить это приведение самому:

DimData = (_DimData*)0x810000;
→ Ссылка