Bug in Endian-Konvertierung
-
Hallo,
vielleicht sieht jemand meinen Fehler:
ofstream file; file.open( "datei.bin" ); for( int i=0; i<size; ++i) { unsigned short bgr = puffer[i]; char *bytes = reinterpret_cast<char *>( &bgr ); // char bytes[2] = {0,1}; file.write( &(bytes[1]), 1 ); // big endian file -> reverse byte order file.write( &(bytes[0]), 1 ); } file.close();Das habe ich mal aus meinem Programm rausgeschnitten. Irgendwie ist die resultierende Datei ein paar Bytes zu groß!?
Wenn ich die auskommentierte Zeile statt dem Cast nehme gehts.
Ist die Konvertierung so OK? Oder ist da woanders was falsch?Danke,
Stimpy
-
file.open( "datei.bin", ios::binary );
-
DANKE!

So'n behämmerter Fehler! Und ich hatte schon Stunden gesucht!