![]() |
Проблема с fread()
Всем привет!
У меня возникла проблема - С пропускает 0х00 при чтении fread'ом. Причем если читать по одному байту, то все ок, а если по два (например, short int) - то пропускает 0х00 и сотрит на след. байт. Т.е. при последовательности ... 0х00 0х02 0х01 ... и чтении с начала этого фрагмента числа формата short выдает в 16-ричном виде не 0х0200, а 0х0102. Код прилагается =) Код:
typedef unsigned char BYTE; |
int readbytes;
readbytes = fread(&boot, 1, 62, ff); посмотри че получилось |
Как и ожидалось, 62. Я по бйтам выводил всю переменную boot - читаются именно нужные 62 байта. То есть проблема не с самой fread(), а скорее с определением того места в уже прочитанной переменной, где начинается short-число.
|
| Часовой пояс GMT +4, время: 03:57. |
Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.