Falsche speicherung
-
HILFE!!
#include <windows.h> #include <iostream.h> #include <stdlib.h> #include <stdio.h> WORD* iGrafik; int d, f; void main () { h.iKoX = 7; h.iKoY = 4; iGrafik = new WORD [h.iKoX * h.iKoY]; for (int k = 0; k < h.iKoX * h.iKoY; k++) { iGrafik[k] = 100; // oder 10 } FILE *file = fopen( "test02.map", "w" ); fwrite (iGrafik, sizeof (WORD), h.iKoX * h.iKoY, file); fclose(file); }
Nun das Problem:
wenn ich für iGrafik den Wert 10 setze kommt am Ende eine gößere Datei raus (3Byte pro Zahl) als wenn ich sie auf 100 oder höher setzte (nur 2Byte)
Was ist los??lalalala
-
C-Problem. Wollen wir hier nicht.
-
Wo ist denn h definiert ???
-
struct HEADER
{
int iKoX,
iKoY;
}h;