LINUX.ORG.RU

чтение ширины\длины бинарного файла lsb msb


0

0

Подскажите как прочитать ширину и длину бинарного файал из заголовка?
Вот нашел функцию...
http://www.rsdn.ru/Forum/message/78807.1.aspx
но у меня она не работает
long Mult( BYTE lsb, BYTE msb ) { // get.c:259: ошибка: expected ')' before 'lsb'
    return (lsb + (msb * 256));
}
bool GetJpegDim(const char *pFile, int Width, int Height){ //get.c:263: ошибка: expected '=', ',', ';', 'asm' or '__attribute__' before 'GetJpegDim'
Width = Height = -1;
FILE* hFile = fopen(pFile,"out.jpg");
if(!hFile) return false;
long lPos=0;

Нашел похожую...
http://www.freevbcode.com/ShowCode.Asp?ID=112
В принципе там тоже , только на ВБ
End Sub
Private Function Mult(lsb As Byte, msb As Byte) As Long
    Mult = lsb + (msb * CLng(256))
End Function
anonymous

А чем компилируешь-то? Похоже на то, что компилятор работает с древним-древним диалектом C.

И не надо писать на C в виндовом стиле: все эти BYTE, hFile сразу выдают.

mo3r
()

typedef unsigned char BYTE;

anonymous
()

+ typedef int bool; + typedef прочая виндовая быдлошняга.

anonymous
()
Ответ на: комментарий от mo3r

>А чем компилируешь-то? Похоже на то, что компилятор работает с древним-древним диалектом C.
Ага, это на си++, как лучше заменить bool? 

>И не надо писать на C в виндовом стиле: все эти BYTE, hFile сразу выдают.
А как тогда еще?
Как лучше сделать вот это...
   if(!fread(bBuf,3,1,hFile)) {
      fclose(hFile); return false;
      }
     if(bBuf[0] == 0xFF && bBuf[1] == 0xD8 && bBuf[2] == 0xFF)
Ну типа считали файл, сравниваем значения с имеющимися. Если я хочу разные типы файлов там определять, то таких ифов будет просто немерянно. Как сделать компактнее?

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.