Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#11

AW: VBA Script in Delphi umsetzen

  Alt 3. Dez 2013, 13:19
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.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 3. Dez 2013 um 13:23 Uhr)
  Mit Zitat antworten Zitat