Męczę się z odczytem pliku bmp, obciąłem już nawet nagłówek do dwóch zmiennych i mam dziwny błąd... tak wygląda nagłówek :
typedef struct HANDLEBMP2
{
short bfType; // Sygnatura pliku BMP: 4D42h ("BM")
int bfSize; // Dlugosc calego pliku
} HANDLEBMP2;
HANDLEBMP2 handle;
i kiedy odczytuje to w ten sposób:
fread(&handle.bfType, 2, 1, plik);
fread(&handle.bfSize, 4, 1, plik);
to zmienna bfSize ma dobrą wartość, ale gdy próbuje odczytać nagłówek jako całość
fread(&handle, 1, sizeof(HANDLEBMP2), plik);
to już jest niepoprawna wartość :-/ żeby było śmiesznie to odczytanie danych z tak pobranego nagłówka w ten sposób:
int tmp = (int)(((short*)&handle)[1]) + (int)(((short*)&handle)[2])*65536;
lub :
int tmp = *((int*)((char*)&handle+2));
Daj poprawny wynik :| nie rozumiem już co jest źle, z góry dzięki za pomoc ...