Я использую ММАП и у меня есть такой код:Могу ли я просто сохранить результат mmap в целое число?
void* mappedRegion;
mappedRegion = mmap(0, 8192, PROT_READ| PROT_WRITE, MAP_SHARED, fd, 0);
В C++ является недействительным указатель правильный способ сделать это? Зачем нам нужен указатель на пустоту? не mmap просто возвращает адрес нового отображения? Будет ли int32_t обрабатывать это?
'mmap' возвращает' void * ', так что вам здесь нужно, независимо от языка, который вы используете. И, конечно, 'void *' может быть 64 бита, поэтому использование более короткого целочисленного типа было бы очень плохой идеей. –
Вы не можете предположить, что возвращенный адрес имеет фиксированную битовость, если вы хотите, чтобы переносимый код –
'mmap' не является элементом C++ 11. –