(Co-Admin)
Registriert seit: 29. Mai 2002
Ort: Hamburg
11.119 Beiträge
Delphi 11 Alexandria
|
Re: Fehler bei Wertzuweisung
5. Mai 2004, 23:34
Moin Alter Mann,
das Problem dürfte vermutlich sein, dass Du nicht berücksichtigst, was inc(P) macht.
Da P als Pointer auf ein DWORD deklariert wurde, wird der Pointer bei jedem inc um 4 erhöht.
Ich denke mal, dass Du die Buffersize in Anzahl Byte und nicht in Anzahl DWORD angegeben hast, und somit P nach 32 durchläufen ausserhalb des reservierten Speichers zugreift.
[EDIT]
@GuenterS:
durch inc(P) wird auf das nächste DWORD adressiert, durch inc(P^), wird das DWORD auf das P gerade zeigt um 1 erhöht, was in dem gezeigten Zusammenhang für mich auch mehr Sinn macht.
[/EDIT]
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
|