У меня есть следующая структура данных в C:
typedef struct {
void* buffer;
...
} SharedMemory;
Я определил sharedMemoryBuffer, который будет содержать массив структур SharedMemory:
sharedMemoryBuffer = createSharedMemory("/xxxyz", NUM_BLOCKS * sizeof(Block));
Моя проблема сейчас заключается в попытке прочитать из общей памяти блок в данной позиции. Я думал, что следующего должно быть достаточно, но компилятор C жалуется:
Block* block = (Block*)sharedMemoryBuffer->buffer[readPosition];
Ошибка:
Invalid use of void expression.
Как мне привести последнюю строку кода так, чтобы компилятор не кричал на меня об этой строке?
Спасибо