000
21.03.2004, 20:25 Uhr
FloSoft
Medialer Over-Flow (Administrator)
|
Hi, folgendes ist seltsam:
C++: |
int numStatics = Idx.size / sizeof(StaticCell);
|
Idx.size ist 21
Bei Release: numStatics ergibt 2 Bei Debug: numStatics ergibt 3 <- korrekter Wert
er scheint statt 7 für sizeof(StaticCell) bei Debug bei Release >8 zu nehmen. Warum das?
Scheinbar gibt es noch mehr so probleme in dem Programm, da er mir noch diverse andere Fehler erzeugt.
Bearbeitung: |
ein weiterer Fehler ist folgender: memcpy(&cells[0], &pStatic0Mul[Idx.lookup], Idx.size);
cells ist ein 64-felder array aus je 7 Bytes. Das memcpy "schluckt" auch das 8te Byte, wodurch sich der komplette Datenstrom verschiebt
|
Bearbeitung von nochmal's: |
habe nun die obere Zeile durch folgende ersetzt, nun funktionierts
C++: |
for(int x = 0; x < numStatics; x++) memcpy(&cells[x], &pStatic0Mul[Idx.lookup+x*7], 7);
|
|
-- class God : public ChuckNorris { }; Dieser Post wurde am 21.03.2004 um 20:38 Uhr von FloSoft editiert. |