Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - ' in eine Variable schreiben


Georg08 - Do 07.08.08 14:42
Titel: ' in eine Variable schreiben
Hallo, gibt es eine möglichkeit das Zeichen ' in eine Variable zu schreiben?


Gausi - Do 07.08.08 14:48


Delphi-Quelltext
1:
meineVar := '''';                    


Georg08 - Do 07.08.08 14:55

? wie soll '''' ' ' ' ergeben? im php is es \' geht das vllt hier auch?


Narses - Do 07.08.08 15:03

Moin!


Delphi-Quelltext
1:
MyStrOrChar := #39;                    

cu
Narses


Gausi - Do 07.08.08 15:05

user profile iconGeorg08 hat folgendes geschrieben:
? wie soll '''' ' ' ' ergeben? im php is es \' geht das vllt hier auch?
Vielleicht einfach ausprobieren? :roll: Der doppelte '' zwischen den beiden einzelnen ' sorgt dafür, dass '''' als ' behandelt wird.


baka0815 - Do 07.08.08 16:03

Erklärungsversuch:

Der Code von user profile iconGausi ist natürlich korrent: meineVar := '''';

Mit dem ersten ' fängst du den String an, mit dem letzten ' hört der String wieder auf. Soweit so gut.
Wenn man nun ein einfaches ' einfügen würde, würde Delphi "denken", dass der String dort bereits zu Ende wäre und den Fehler anmeckern, dass hinter dem String (meineVar := ''';) ja noch ein ' steht.

Die Delphi-Entwickler haben es sich jedoch nicht bei C abgeguckt und den Backslash als escape character verwendet, sondern eben die Dopplung des einzelnen Anführungszeichen (vgl. mit SQL).
Somit entspricht '' (zwei einzelne ') im String schließlich einem '.

WriteLn('Dies is''n Test'); gibt somit "Dies is'n Test" auf der Kommandozeile aus.