У меня есть эта странная проблема:
Я пишу 16 символов в двоичный файл, а затем пишу 3 целых числа, но когда я открываю свой файл с помощью некоторого средства просмотра двоичных файлов, я вижу добавленный дополнительный байт (что равно 0x0D).
Здесь мой код:
for(i = 0; i < 16; i++)
{
if(i < strlen(inputStr))
{
myCharBuf[0] = inputStr[i];
}
else
{
myCharBuf[0] = 0;
}
fwrite(myCharBuf, sizeof(char), 1, myFile);
}
myIntBuf[0] = inputNumber1;
fwrite(myIntBuf, sizeof(int), 1 ,myFile);
myIntBuf[0] = inputNumber2;
fwrite(myIntBuf, sizeof(int), 1 ,myFile);
myIntBuf[0] = inputNumber3;
fwrite(myIntBuf, sizeof(int), 1 ,myFile);
Я получаю следующие байтовые значения:
61 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0D 0A 00 00 00 05 00 00 00 08 00 00 00
Когда я ожидаю:
61 00 00 00 00 00 00 00 00 00 00 00 00 00 00
0A 00 00 00 05 00 00 00 08 00 00 00
Есть ли у кого-нибудь идея, почему это может случиться?