Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

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

AW: Unicode strings

  Alt 8. Aug 2014, 15:03
#$01 entspricht dem #1 und alles im ASCII-Bereich (#0 bis #127) ist in allen Kodierungen gleich, womit das niemals eine Veränderung erfahren sollte.
Die #0 muß zwar beachtet werden, aber der String selber kann solche Zeichen problemlos behandeln, solange man nicht fahrlässig mit PChar-Funktionen, ohne Längenangabe, rumhantiert.

Wie ist denn das Send deklaiert? (mit String-Parameter?)


Wo man etwas aufpassen muß, ist z.B. bei #$0085 und #$85 oder #133, denn bei Erstem geht Delphi davon aus, daß es Unicode ist und beim Letzen kann es als ANSI behandelt werden und erfährt dann eventuell eine Konvertierung nach Unicode.
Rein logisch ist es zwar das Selbe, aber der Compiler achtet halt auf sowas.



Aus soeinem Grund hab ich grade eine Serial-Port-Komponente komplett neu aufgesetzt, bzw. bin noch dabei.
Die ist von der Schnittstelle der vom C# ähnlich, mit Anpassungen an Delphi und diese String-Probleme, einer internen explizit steuerbaren String-Konvertierung und mit Erweiterungen anhand der zusätzlichen Möglichkeiten der WinAPI. (und später hoffentlich auch noch für iOS und vorallem für Android)
Wobei ich absichtlich auch TBytes unterstütze, um das String-Konvertierungs-Problem ganz auszuschließen.

Wobei iOS/Android noch Spaß machen wird, denn dort gibt es keinen AnsiString mehr ... nur noch Unicode.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.

Geändert von himitsu ( 8. Aug 2014 um 15:11 Uhr)
  Mit Zitat antworten Zitat