Witajcie,
Nie chciałbym przekazywać Wam moich negatywnych emocji:), ale SZLAG JASNY MNIE TRAFIA. Czy ten oto kod czytający dane z binarki w których występują chary o wartościach 0 i 255 zamieni wszystkie wartości na przeciwne? Nie będę Wam sugerował co się dzieje. Próbowałem jeszcze innych sposobów(odczyt bajt po bajcie) i za każdym razem są jakieś cyrki. Miałem nawet sytuację, że po każdym uruchomieniu programu 255 zamieniały się z 0 podczas odczytu. Nie wiem o co biega.
unsigned char* line = new unsigned char[450];
for (int y = 0; y<321; y++)
{
int pos = ftell(file);
fread(line, 1, 450, file);
for (int x=0; x<450; x++)
{
line[x] = ((int)line[x] == 255) ? (unsigned char)0 : (unsigned char)255;
}
fwrite(line, 1, 450, file);
}