Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi String > 255, oder anderer Datentyp (https://www.delphipraxis.net/28633-string-255-oder-anderer-datentyp.html)

nailor 27. Aug 2004 11:43

Re: String > 255, oder anderer Datentyp
 
hmm. bei mir hat ein ganz normaler string keine "sichtbare" beschränkung:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var
  s: string;
  i: integer;
begin
s := '';
for i := 0 to 10000 do
  s := s + inttostr(i);
Memo1.Text := s;
end;

sakura 27. Aug 2004 11:52

Re: String > 255, oder anderer Datentyp
 
Zitat:

Zitat von Patrick
Ich hab folgendes Problem:
Ich brauche einen String ohne Limit.

Der normale String hat (seit D2) kein (spürbares) Limit, er ist bis auf 2GB (oder waren es 4 :gruebel:) aufblasbar. Die ShortStrings und Strings wie String[25] haben ein Limit.

...:cat:...

SleepyMaster 27. Aug 2004 11:54

Re: String > 255, oder anderer Datentyp
 
Zitat:

Ich hab folgendes Problem:
Ich brauche einen String ohne Limit.

Also das kann ich vergessen, zu klein
Hä??? Das versteh ich jetzt nicht! Soweit ich weiß ist ein string auf eine Größe von 4GB limitiert.
Genügt das nicht???

type
TZahl = int64;

Delphi-Quellcode:
procedure StrtoTZ(ZString : string; var zahl : TZahl);
begin

end;

procedure TForm1.Button1Click(Sender: TObject);
var
  s: string;
  X: int64;
begin
SetLength(s, 1024 * 1024 * 1024);
StrtoTZ(s, x);
end;
Damit würde man einen immerhin 1GB großen string übergeben

Patrick 27. Aug 2004 12:15

Re: String > 255, oder anderer Datentyp
 
Also ich hab gelesen, dass der "normale" String auf 255 Zeichen beschränkt ist, was sich am Beispiel "ShowMessage" zeigt:
Delphi-Quellcode:
ShowMessage('<--Hier uber 255 Zeichen rein machen-->');
Der ist beschränkt...

Ich muss zugeben, ich habe in einem Buch für Turbo Pascal nachgesehen, aber das obrige Beispiel zeigt dies auch, denke ich...

Ich hab die ganze Geschichte jetzt nochmal mit einem "String" getestet, der macht Locker 500-1000 Zeichen mit!
Ich dachte, ich müsste dann mit SetLength arbeiten, was ich allerdings nicht mache, ich mache eigentlich nur eine Zuweisung mit einem Edit.Text.


Dann ist es ja jetzt egal, ob ich String oder AnsiString benutze...

sakura 27. Aug 2004 12:21

Re: String > 255, oder anderer Datentyp
 
Zitat:

Zitat von Patrick
Dann ist es ja jetzt egal, ob ich String oder AnsiString benutze...

Jain, in Delphi 7 sind die Strings gleich AnsiString, aber das muss nicht so bleiben ;) String ist der jeweilige Standard der Delphi-Version, während AnsiString immer AnsiString bleiben wird :zwinker:

...:cat:...

Luckie 27. Aug 2004 12:26

Re: String > 255, oder anderer Datentyp
 
Zitat:

Zitat von Patrick
Also ich hab gelesen, dass der "normale" String auf 255 Zeichen beschränkt ist, was sich am Beispiel "ShowMessage" zeigt:
Delphi-Quellcode:
ShowMessage('<--Hier uber 255 Zeichen rein machen-->');
Der ist beschränkt...

Das darfst du aber nicht mit hardgecodeten Stringliteralen verwechseln. Folgendes geht nämlich: Eine Konstante definiren und dort mit '+' hardgecodete Strings von 255 Zeichenlänge zusammenstückel dass man über 255 Zeichen kommt. Die Konstante kannst du dann ohne Probleme mit ShowMessage anzeigen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:11 Uhr.
Seite 2 von 2     12   

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-2025 by Thomas Breitkreuz