Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Änderungen bei Hochkommas in Strings zwischen D7 und XE4? (https://www.delphipraxis.net/180599-aenderungen-bei-hochkommas-strings-zwischen-d7-und-xe4.html)

Codehunter 2. Jun 2014 13:39

Delphi-Version: XE4

Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Hallo!

Mir ist das heute zufällig aufgefallen:
Delphi-Quellcode:
// D7
sTest:= 'Hello ''World''!'; // Ausgabe: Hello World!
sTest:= 'Hello '''World'''!'; // Ausgabe: Hello 'World'!

// DXE4
sTest:= 'Hello ''World''!'; // Ausgabe: Hello 'World'!
sTest:= 'Hello '''World'''!'; // Ausgabe: Hello ''World''!
Kann das noch jemand bestätigen?

Grüße
Cody

-=ZGD=- 2. Jun 2014 13:55

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Hallo.

Kann ich nicht bestätigen.

In D7 und XE2 ist die Ausgabe jeweils die gleiche.

Gruß,
Stefan

mkinzler 2. Jun 2014 13:58

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
In DXE6 ist sie verschieden. Also scheint diese Änderung mit XE3 üder XE4 gekommen zu sein.

baumina 2. Jun 2014 14:06

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Zitat:

Zitat von Codehunter (Beitrag 1261034)
Hallo!

Mir ist das heute zufällig aufgefallen:
Delphi-Quellcode:
// D7
sTest:= 'Hello ''World''!'; // Ausgabe: Hello World!
sTest:= 'Hello ''''World'''!'; // Ausgabe: Hello 'World'! 

// DXE4
sTest:= 'Hello ''World''!'; // Ausgabe: Hello 'World'!
sTest:= 'Hello ''''World'''!'; // Ausgabe: Hello ''World''!
Kann das noch jemand bestätigen?

Grüße
Cody

Die in der zweiten Zeile fehlt irgendwie ein ' vor dem !, denn ich kanns mit XE erst gar nicht kompilieren.

p80286 2. Jun 2014 14:07

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Also für D7 kann ich das nicht bestätigen
Delphi-Quellcode:
  showmessage('Hello ''world'' '#13#10' hello '''' World ''''!'
ergibt
Hello 'World'
Hello ''World'' !

bei
Delphi-Quellcode:
'Hello ''''World'''!';
meckert er daß er einen nicht abgeschlossenen String hat.

Gruß
K-H

Sir Rufo 2. Jun 2014 14:08

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Zitat:

Zitat von baumina (Beitrag 1261042)
Zitat:

Zitat von Codehunter (Beitrag 1261034)
Hallo!

Mir ist das heute zufällig aufgefallen:
Delphi-Quellcode:
// D7
sTest:= 'Hello ''World''!'; // Ausgabe: Hello World!
sTest:= 'Hello ''''World'''!'; // Ausgabe: Hello 'World'! 

// DXE4
sTest:= 'Hello ''World''!'; // Ausgabe: Hello 'World'!
sTest:= 'Hello ''''World'''!'; // Ausgabe: Hello ''World''!
Kann das noch jemand bestätigen?

Grüße
Cody

Die in der zweiten Zeile fehlt irgendwie ein ' vor dem !, denn ich kanns mit XE erst gar nicht kompilieren.

Das zeigt ja schon der Highlighter hier (2. Kommentar ist blau = String und nicht grün = Kommentar) ;)

Bernhard Geyer 2. Jun 2014 14:14

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Also wenn du wirklich deine Ausgaben hast, dann ist dein D7 kaputt!

Zwei hochkomme hinterheinander ist eine Escape-Sequenz das im String ein hochkomma sein soll.
Ähnlich wie in C/C++ das \\.

Codehunter 2. Jun 2014 15:23

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Wegen dem nicht abgeschlossenen String: Mein Fehler, hatte es frei getippt und nicht aus der IDE kopiert. Am eigentlichen Kern der Frage ändert das erstmal nix: In D7 und in DXE4 (oder 3?) ist die Verarbeitung von doppelten bzw. mehrfachen Hochkommas im (hartcodierten) String unterschiedlich.

Bernhard Geyer 2. Jun 2014 15:33

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Zitat:

Zitat von Codehunter (Beitrag 1261055)
In D7 und in DXE4 (oder 3?) ist die Verarbeitung von doppelten bzw. mehrfachen Hochkommas im (hartcodierten) String unterschiedlich.

Das bezweifle ich das das unteschiedlich ist. Dieses Escaping ist schon seit Pascal-Urzeiten so definiert.

himitsu 2. Jun 2014 15:36

AW: Änderungen bei Hochkommas in Strings zwischen D7 und XE4?
 
Also wie war das jetzt?
Delphi-Quellcode:
  ShowMessage('Hello ''World''!'); // Hello 'World'!
  ShowMessage('Hello ''''World''''!'); // Hello ''World''!
In Delphi 7 soll nicht das vom Kommentar angezeigt werden und in aktuelleren XEs soll es nun stimmen?

Für D4 bis XE3 (gerade nochmal in D7 getestet) kann ich das nicht nachvollziehen.
Und wenn sich ab XE4 daran was geändert hat, dann würde ich das als Bug einstufen.

PS: Den Schreibfehler im ersten Post kannst du ja noch schnell beheben.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:16 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz