21:25

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

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

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

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

Комментарии
14.02.2018 в 10:22

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

being.~ath, это да.

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

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

Расширенная форма

Редактировать

Подписаться на новые комментарии
Получать уведомления о новых комментариях на E-mail