Zum Thema mich hat das nur mit dem MoveMemory geärgert das man hier hunderte von Konvertierungen machen muss
um am ende das gleiche Ergebnis zu bekommen wie unter den anderen Sprachen auch.
Wenn du dir das Leben einfacher machen würdest, dann hättest du auch nicht solche Probleme.
Nicht immer alles in einer Zeile Lösen wollen, das führt zu nix.
Das ist schwer lesbar und macht es kompliziert.
Komplizierte Dinge führen zu Fehlern, das regt dich auf.
Wenn du dich aufregst, wirst du unsachlich.
Wenn du unsachlich wirst, suchst du den Fehler bei dem Computer, dem Compiler, dem verwendeten Framework, der
WinApi, der Sprache und/oder den Leuten, die dir nur helfen wollen und dabei auch mal ihre Worte nicht in Zuckerwatte packen.
Ist ja auch kein Streichelzoo hier!
Code:
PVOID Destination, Source;
SIZE_T MemorySize;
MemorySize = sizeof(short);
Destination = &buffer[0] + (K * MemorySize);
Source = &A2[K];
MoveMemory(Destination, Source, MemorySize);
Delphi-Quellcode:
var
Destination, Source: Pointer;
MemorySize: SIZE_T;
begin
...
MemorySize := SizeOf(Short);
Destination := Pointer(NativeUInt(@buffer[0]) + K * MemorySize);
Source := @A2[K];
MoveMemory(Destination, Source, MemorySize);