У меня есть две структуры rom и Transfer.
typedef struct
{
const uint32 data;
}rom;
typedef struct
{
const rom* const read;
}transfer;
extern const transfer num;
В другой программе на C я объявил
transfer* count;
и
count = (transfer*)(*((uint32*)((uint32)&num) + 2*seqno));
Выше код компилируется вкомпилятор gcc.Но когда я включаю extern "C" {}, сохраняю файл как .cpp и собираю его с помощью компилятора g ++, я получаю ошибку.Поскольку прямое приведение типов невозможно с компилятором g ++.ошибка
ошибка: приведение от 'const Transfer *' к 'uint32 {{aka unsigned int}' теряет точность [-fpermissive]
Как мы можем выполнить типдля компилятора c ++?