Einzelnen Beitrag anzeigen

Mysterio08

Registriert seit: 11. Jan 2009
142 Beiträge
 
#1

x: String; -> zu Groß

  Alt 23. Mai 2009, 09:08
Hy Community,
ich hab mich neulich ein bisschen mit Strings beschäftigt und habe wieder gelesen:
Zitat:
Wenn ein Speicherplatz vom Typ String angefordert wird, wird ein 32Bit Speicherplatz reserviert, der bis zu 2 Milliarden Zeichen aufnehmen kann
und weiter
Zitat:
Im Falle eines Speicherplatz vom Typ ShortString stellt Delphi 256Byte bereit.
Da sind natürlich riesen Unterschieden zwischen "praktisch unbegrenzt" (ich hab errechnet: bei einem Roman mit 60 Zeichen pro Zeile und 35 Zeilen entsrpäche das mehr als 900.000 Buchseiten) und 255 Zeichen und so kann man, wie allen bekannt sein dürfte einen String auch so deklarieren:

s: String[40] //s kann bis zu 40 Zeichen aufnehmen Nun meine Frage: Wenn ich eine Variable so deklariere, dann reserviere ich mir doch nicht auch einen 32Bit Speicherplatz, oder? Oder ist Delphi so "intelligent", dass es den Speicherplatz errechnet?

mfg. Mysterio08
  Mit Zitat antworten Zitat