AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Die Delphi-IDE Warum ist 'String' ein reserviertes Wort?
Thema durchsuchen
Ansicht
Themen-Optionen

Warum ist 'String' ein reserviertes Wort?

Ein Thema von fwsp · begonnen am 26. Apr 2006 · letzter Beitrag vom 27. Apr 2006
Antwort Antwort
Seite 1 von 2  1 2      
fwsp
(Gast)

n/a Beiträge
 
#1

Warum ist 'String' ein reserviertes Wort?

  Alt 26. Apr 2006, 18:04
Hallo

der Titel sagt es eigentlich schon: Warum ist 'String' als Typenbezeichner ein reserviertes Wort (warum wird es hervorgehoben) und 'Integer' beispielsweise nicht?
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#2

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 26. Apr 2006, 18:07
Ich schätze, weil du Strings nicht wirklich enger begrenzen kannst, sodass string wirklich ein elementares Sprachelement darstellt. Integer, Word, Byte, Int64 und Co sind begrenzbar(er). Versuch mal nen String enger zu fassen als "Zeichenkette". Und dann versuch mal, nen Integer enger zu fassen als "von -2^31 bis 2^31-1". Ersteres wird scheitern, zweiteres nicht

Falls das kompletter Schwachsinn sein sollte: einfach mal die Bohrinseler fragen
  Mit Zitat antworten Zitat
MrKnogge

Registriert seit: 9. Jun 2003
Ort: Pforzheim
2.458 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 26. Apr 2006, 18:26
Zitat von Dax:
Ersteres wird scheitern, zweiteres nicht
Was ist mit 'string[254]' ?
Christian Bootz
Einstein ist tot, Newton ist tot,
und mir ist auch schon ganz schlecht...
  Mit Zitat antworten Zitat
Dax
(Gast)

n/a Beiträge
 
#4

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 26. Apr 2006, 18:28
Das ist lediglich eine Längenbegrenzung und ist damit nichts anderes als ein Char-Array dieser Größe *mein*
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 26. Apr 2006, 22:53
Zitat von Dax:
Versuch mal nen String enger zu fassen als "Zeichenkette".
String = n*Char
Somit wäre Char der kleinste Zeichentyp, denn ein String ist auch nur eine Aneinaderreihung von einzelnen Zeichen.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 27. Apr 2006, 06:51
Zitat von Luckie:
Zitat von Dax:
Versuch mal nen String enger zu fassen als "Zeichenkette".
String = n*Char
Somit wäre Char der kleinste Zeichentyp, denn ein String ist auch nur eine Aneinaderreihung von einzelnen Zeichen.
Äh... und was ist mit dem Längenbyte? Oder der impliziten Übereinkunft, daß das #0-Zeichen den String begrenzt. Ein String ist nunmal mehr als eine Aneinanderreihung von Zeichen, so wie ein (DP-)Team mehr ist als die Summe der einzelnen Mitglieder...

Um dann noch ein weiteres Argument einzustreuen:
String ist ein Sprachbestandteil von Delphi, also ist String ein reserviertes Schlüsselwort. Ich hab ich auch immer geärgert, wieso Integer, Byte etc. nicht fett gedruckt werden, aber so ist das nun mal: Das sind einfach nur irgend welche Datentypen, wie sie Jeder anlegen kann.

Dagegen spricht nun aber, das es dann bestimmte Basistypen geben müsste, die auch Sprachbestandteil von Delphi/Pascal sind. Wie man aus dieser argumentativen Zwickmühle rauskommt, überlasse ich aber Leuten, die das drauf haben: maaaarrraaaaabuuuuuu.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#7

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 27. Apr 2006, 07:15
string ist ein reserviertes Wort im originalen Pascal.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#8

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 27. Apr 2006, 07:29
Integer nicht?
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 27. Apr 2006, 07:58
Guten Morgen.

STRING war im Original-Pascal kein reserviertes Wort, eher ein Konzept, welches sich noch voll und ganz auf dem array of char abstützte. Erst Borland und später auch andere (Jensen&Partners, Stony Brook, ...) haben durch die feste Verdrahtung des strukturierten Typen STRING im Compiler-Kern die Bedeutung gegeben, die wir heute noch als short string kennen - Compiler Magic gab es auch schon in TP1.

Die Redefinition von Integer ist völlig problemlos, aber der Typ String mit seiner Verankerung in den Kernroutinen erschien Borland wohl so schützenswert, dass sie STRING zum reservierten Wort erklärt haben.

Grüße vom marabu
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#10

Re: Warum ist 'String' ein reserviertes Wort?

  Alt 27. Apr 2006, 08:58
So, für die Antwort legt John Kaster zwar nicht seine Hand ins Feuer, aber er glaubt, dass es damals folgender Grund war: string benötigt Compiler-Magic.

String als reserviertes Wort zu setzen war eine Borland-Entscheidung vor nunmher fast 20 Jahren, daher ist er sich auch nicht mehr 100%ig sicher, aber er glaubt, dass das der Grund war.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  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 14:44 Uhr.
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