Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#11

Re: c++ Code nach Delphi portieren

  Alt 11. Jul 2009, 10:26
Der Code funktioniert in Delphi mit normalen AnsiStrings eventuell nicht.
Und das erkennt man eben daran:
Code:
if(string[x] > (0xff))
Denn ein einzelnes Zeichen kann in Delphi keinen Wert größer 255 haben. Allerdings kann es auch sein das ein normaler String doch geht, denn beim Überlauf passiert genau das gleiche. Denn wenn auf 255 beispielsweise 2 addiert werden kommt 257 raus was bei einem Überlauf eine 1 wäre.
Und das gibt eben das gleiche wie 257 - 256.

Wenn man das ganze also mit einem älteren Delphi macht sollte es ohne diese Prüfung funktionieren. Verwendet man jedoch eine Version wo ein Zeichen einen Wert größer 255 annehmen kann (unicode zum Beispiel) so muss eben die Korrektur manuell gemacht werden. Es wäre also interessant zu wissen welche Delphiversion verwendet wird (wurde im Profil ja leider nicht angegeben).
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat