AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Reservirtes Wort String und keins Integer
Thema durchsuchen
Ansicht
Themen-Optionen

Reservirtes Wort String und keins Integer

Ein Thema von jdelphi · begonnen am 26. Mai 2014 · letzter Beitrag vom 28. Mai 2014
Antwort Antwort
Seite 1 von 2  1 2      
jdelphi

Registriert seit: 24. Dez 2005
6 Beiträge
 
#1

Reservirtes Wort String und keins Integer

  Alt 26. Mai 2014, 20:26
Joa wie der Tittel schon sagt.

Warum ist String ein Reserviertes Wort und Integer keins.

Wenn man bei Delphi eine String Variable definiert, erscheint String in Fett, da es ein Reserviertes Wort ist.

Wenn man allerdings Integervaribalen Definiert, wird Integer nicht Fett hervorgehoben.
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Reservirtes Wort String und keins Integer

  Alt 26. Mai 2014, 20:30
Integer ist aber trotzdem ein reserviertes Wort. Auch wenn die IDE es vielleicht nicht erkennt.
Markus Kinzler
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#3

AW: Reservirtes Wort String und keins Integer

  Alt 26. Mai 2014, 22:10
Warum ist String ein Reserviertes Wort und Integer keins.

Wenn man bei Delphi eine String Variable definiert, erscheint String in Fett, da es ein Reserviertes Wort ist.
String ist nicht fett, weil es ein Variablentyp ist, das ist nur ein Zufall. Laut meiner Kenntnis ist String deshalb fett, weil es auch eine Funktion ist, z. B.
Delphi-Quellcode:
ShowMessage(String('Hallo'));
//
Gäbe es die Funktion nicht, wäre String als Variablentyp nicht fett.

Ob es nun diese oben genannte Funktion ist oder eine andere, das weiß ich jetzt auch nicht genau. Was ich aber ziemlich sicher weiß ist, dass String neben dem Variablentyp auch noch eine andere wichtige Funktion hat. Und deshalb ist es ein reserviertes Wort und fett. Nicht weil es ein Variablentyp ist.
  Mit Zitat antworten Zitat
Benutzerbild von Stevie
Stevie

Registriert seit: 12. Aug 2003
Ort: Soest
4.042 Beiträge
 
Delphi 10.1 Berlin Enterprise
 
#4

AW: Reservirtes Wort String und keins Integer

  Alt 26. Mai 2014, 23:02
Das gabs schonmal.
Stefan
“Simplicity, carried to the extreme, becomes elegance.” Jon Franklin

Delphi Sorcery - DSharp - Spring4D - TestInsight
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.687 Beiträge
 
Delphi 2007 Enterprise
 
#5

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 02:26
Laut meiner Kenntnis ist String deshalb fett, weil es auch eine Funktion ist
Das kann nicht der wirkliche Grund sein. Eigentlich ist das in deinem Beispiel ein Cast, kein Funktionsaufruf. Da String (u.a.) aber Compilermagic nutzt, wird hinter den Kulissen mehr gemacht als bei einem Cast einfacher Typen. Semantisch ist es aber dennoch kein Funktionsaufruf, Casts sehen aber syntaktisch in Delphi genau so aus.

Wie der verlinkte Thread gut demonstriert ist der genaue Grund dafür nicht (mehr) wirklich offensichtlich. Ich schließe mich da aber der Theorie von dort an, dass es schlicht ein Relikt aus Zeiten ist, wo String und Array und File ziemlich die einzigen Typen waren, bei denen mehr passiert ist als stumpfes "interpretiere Register X als [Typ]", und diese daher eher als Sprachfeature galten. Würde man die Delphi Language heute erfinden, würde vermutlich keiner mehr auf die Idee kommen diese auf die Art hervorzuheben. Ein Fall von "ist jetzt halt einfach so"
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#6

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 07:39
Wie ich an anderer Stelle schon schrieb:
'string' ist ein Systemtyp, also ein Typ, der nicht durch andere Sprachelemente erzeugt werden kann, und damit integraler Bestandteil der Sprache => 'string' ist ein fett geschriebenes weil reserviertes Schlüsselwort. 'Integer' kann durch '..' dargestellt werden, ist also ein normaler Basistyp.

'Double','Single','Real' sind Records und werden deshalb syntaktisch wie 'Integer' behandelt.

'Char'... Mist... ist, öhm.. eine Ausnahme. Wie auch..öhm.. 'Boolean'.

Geändert von Dejan Vu (27. Mai 2014 um 07:44 Uhr)
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 08:12
Zitat:
'Double','Single','Real' sind Records
Markus Kinzler
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#8

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 08:19
Zitat:
'Double','Single','Real' sind Records
Kannst Du sie als Record darstellen? Wie sind die Datentypen aufgebaut? Als Record. Das sind strings zwar auch, aber wegen dem Referenzzähler, der *vor* der Adresse der Variablen steht, kann man ihn nicht als Record definieren.
  Mit Zitat antworten Zitat
Popov
(Gast)

n/a Beiträge
 
#9

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 15:36
Laut meiner Kenntnis ist String deshalb fett, weil es auch eine Funktion ist
Das kann nicht der wirkliche Grund sein.
Ich hab ja auch geschrieben, dass ich mir nicht ganz sicher bin wegen welcher Regelung es fett ist, es soll aber nicht fett sein, weil es ein Variablentyp ist. Den Grund - vorausgesetzt derjenige wusste was er schrieb - habe ich vor zig Jahren in einem Buch über Pascal gelesen. Ich kann mich jetzt aber auch nicht erinnern was es war. Die Aussage war aber dort - String wird als Begriff mehrfach genutzt, einmal als Variablentyp-Bezeichnung, aber auch für etwas anderes. Danach wäre der Variablentyp String selbst kein reserviertes Wort, der String für die andere Nutzung aber schon. Und da man einen Begriff nicht mal als reserviertes Wort haben kann, dann aber wiederum nicht, ist String allgemein ein reserviertes Wort.

Ob es stimmt, weiß ich nicht, zumindest habe ich es so gelesen. Und für mich klang es damals logisch.
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.687 Beiträge
 
Delphi 2007 Enterprise
 
#10

AW: Reservirtes Wort String und keins Integer

  Alt 27. Mai 2014, 15:52
Das war dann bestimmt die o.g. Benutzung als ShortString mit Längenangabe á la Array, welches ja auch fett ist. Dass die anderen Stringtypen diesem Schema nicht folgen könnte daran liegen, dass diese erst später hinzu kamen, wo man die Idee möglicherweise wieder verworfen hatte.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:36 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz