21:25 

_DOOMer_
Запись бинарных данных в файл через приведение uint_32 к указателю на массив char - и в 2018 году актуальна.

wadFile.write((char*)&lump_info.offset, 4);

Ибо работает и пишет так как требует этого формат, созданный четверть века назад, а не как хотят авторы класса QByteArray из фреймворка Qt.

Впрочем Qt в любом случае няшен, и многие другие вещи без него в крестах - почти адский адЪ.

URL
Комментарии
2018-02-14 в 10:22 

Ага, работает только до тех пор, пока не наступает big endian.

2018-02-14 в 15:50 

_DOOMer_
being.~ath, это да.

Но этот проект не придётся портировать на BE-платформы, и данные по сети тоже гонять не требуется. Ну и функции hton*() / ntoh*() никто не запрещает использовать, если уж возникнет необходимость смены порядка байт.

URL
2018-02-16 в 00:43 

_DOOMer_, но почему бы сразу не сделать нормально?
Да и функции hton* / ntoh* предназначены для работы с сетевым порядком байт, а вовсе не обязательно для хранения данных в файлах использовать именно сетевой порядок. Более того, поскольку у little endian есть некоторое преимущество, то логичнее сохранять в little endian, поскольку это будет работать быстрее для большинства систем.

     

Doom, Death, Darkness...

главная