Работа с типами в двоичных файлах - PullRequest
0 голосов
/ 27 апреля 2011

В настоящее время я снова учусь писать двоичные файлы, и у меня есть основной вопрос, касающийся типов и данных, которые они хранят. Я работаю через документ, описывающий двоичный файл. В заголовке используется несколько типов данных uint8, но данные, записываемые в этом типе, являются не целым числом, а символом («F»). Я полагаю, что я должен привести символ "F" к незапятнанному целому числу и записать его в файл:

unsigned int var1 = (int)"F";
fwrite(var1, sizeof(var1), 1, *fp);

При открытии полученного файла в шестнадцатеричном редакторе я вижу, что это не сработало, потому что буква «F» должна быть распознана редактором. Как мне правильно записать это в файл?

Большое спасибо.

Draetsch

1 Ответ

0 голосов
/ 27 апреля 2011

int - это не то же самое, что int8, у int есть 32 бита, а у int8 - 8 бит.Я думаю, что тип данных, который вы ищете здесь для хранения данных из вашего файла во время выполнения, является неподписанным символом, а не беззнаковым целым.

...