Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.024 Beiträge
 
Delphi 12 Athens
 
#6

AW: String vorne mit Nullen auffüllen

  Alt 11. Sep 2022, 15:16
  FillChar(Result, ALength, Ord(AChar));
Obwohl es FillChar heißt, werden da nicht Char gefüllt sondern Byte. Da Char heutzutage 2 Byte groß sind, füllt der Aufruf nur die erste Hälfte - und das auch noch ab der falschen Stelle (0 statt 1 -> Bang!). Bei Nullen könnte das sogar noch klappen, aber bei echten Unicode-Zeichen würde auch das Ord(AChar) nur das untere Byte berücksichtigen. Fazit: FillChar für Strings ist blöd.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat