Zitat:
Ich habe nur ein Problem.
- Die erwähnten Punkte, bezüglich der Klammerungen, hast du mal durchprobiert?
Und bei dem DWORD bin ich mir auch nicht sicher.
Was nimmt den VB als Typ, wenn man das so als DIM deklariert?
DWORD/Cardinal oder Integer ... je nach dem, kommt bei $8******* bzw. $F******* (usw.) etwas Anderes raus, wenn man DIV verwendet > mit oder ohne Vorzeichen.
Zitat:
Delphi-Quellcode:
function Hex(data: longint; width: word): string;
(* pads with leading zeroes to reach specified width; use width=0 for tight fit *)
const
HexChars: array[0..$F] of char = '0123456789ABCDEF';
var
txt: string;
begin
txt := '';
repeat
insert(HexChars[data and $F],txt,1);
data := data shr 4;
until data=0;
while length(txt) < width do
insert('0',txt,1);
Hex:= txt;
end;
Ich würde dir empfehlen nicht den Funktionsnamen als Zuweisung zu nutzen.
Es geht zwar, aber Result ist da besser.
- man sieht, daß es der Rückgabewert ist (und nicht irgendeine Variable von sonstwo)
- und wenn man die Funktion umbenennt, dann muß man nicht aufpassen wo der Name in der Funktion noch verwendet wird
Und du kannst dann auch die Variable txt weglassen und stattdessen direkt Result verwenden, denn das kann man auch auslesen, im Gegensatz zu dem Funktionsnamen.