Thema: Delphi size of string?

Einzelnen Beitrag anzeigen

Chewie

Registriert seit: 10. Jun 2002
Ort: Deidesheim
2.886 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: size of string?

  Alt 17. Nov 2003, 22:26
@HAF4ever: So ähnlich...

Es gibt zwei verschieden Typen Strings: Shortstrings und Hugestrings. Shortstrings können eine Länge zw. 1 und 255 haben, die in eckigen Klammern angegeben wird. Anstatt String[255] kann man auch Shortstring schreiben. Diese Strings sind einfache Array of Chars, an der Stelle 0 wird die Länge gespeichert, anschließend die Zeichen.

Anders sieht das bei Strings aus. Eine Variable vom Typ String stellt einen Zeiger auf eine String-Struktur dar, die so aussieht, dass zunächst ein 4 Byte großer Referenzzähler, gefolgt von einer 4 Byte großen Längenangabe gespeichert wird. Dahintendran stehen die Zeichen, terminiert von einer 0.

Während Shortstrings also problemlos in dyn. Records verwendet werden können, ist die Verwendung von Hugestrings mit Vorsicht zu genießen.
Martin Leim
Egal wie dumm man selbst ist, es gibt immer andere, die noch dümmer sind
  Mit Zitat antworten Zitat