String ist in Delphi als normaler Weise AnsiString. (4 LängenByte's + Daten = 4 Byte bis 2 GB)
OH:
Zitat:
Das reservierte Wort string funktioniert wie ein generischer Typbezeichner:
var S: string;
Hier wird beispielsweise die Variable S für einen String erstellt. Im voreingestellten Status {$H+} interpretiert der Compiler string als AnsiString (wenn auf das reservierte Wort keine Zahl in eckigen Klammern folgt). Bei Verwendung der Direktive {$H–} wird string als ShortString interpretiert.
String[X] = ShortString (1 LängenByte + 1 bis 255 Byte = 2 bis 256 Byte)
Add:
Zitat von
Chewie:
Ein String kann bis zu 2^31 - 1 Zeichen speichern, also etwa 2,1 Milliarden (2 Gigabyte).
IntegerGrenze = 2^31 - 1 = 2147483647
Da ein String einen Integer (4 Byte) für die Längenangabe verwendet, sind das 2^31 - 1 - 4 = 2^31 - 5 = 2147483643 Bytes = 2 GB - 5 Byte.