Я пытаюсь написать простую заставку для файлов изображений TGA в качестве учебного упражнения на C ++.Я основываю свой код на примере загрузчика TGA, который объявляет структуру заголовка и затем использует fread () для загрузки всего заголовка за один раз.
Моя программа сейчас не работаетПохоже, что в файл записаны два дополнительных байта.Я напечатал размер моей структуры, и он на два байта слишком большой (20 вместо правильных 18).После небольшого чтения я думаю, что проблема связана с выравниванием данных и заполнением (я не очень хорошо знаю, как хранятся структуры).Я думаю, я мог бы написать компоненты структуры побайтово, вместо того, чтобы использовать fwrite (), чтобы написать всю структуру сразу, что я и собираюсь сделать сейчас.Я предположил, что если бы он работал при загрузке заголовка, он также работал бы при его написании.Было ли мое предположение неверным?