vor

Zeichenketten-Routinen

weiter

Umwandlungen



Ungeheuer wichtig beim Programmieren ist, dass man die nacheinander eingegebenen Ziffern (evtl. einschließlich des Komma) in eine Zahl umwandeln kann, mit der der Computer weiter rechnen kann. Andererseits muss man auch ein Rechenergebnis wieder auf dem Bildschirm oder mit dem Drucker Zeichen für Zeichen darstellen können.

Die gebräuchlichte Umwandlungsfunktionen sind StrToInt, IntToStr, StrToFloat und FloatToStr (FloatToStr widme ich ein egenes Kapitel ). Aber auch IntToHex oder StrToIntDef sind interessant.

Funktion Bedeutung Beispiel / Bemerkung
StrToInt Versucht, eine Zeichenfolge in einen Integerwert umzuwandeln. x := StrToInt(Edit1.Text);
IntToStr Wandelt einen Integerwert in einen String um. Label1.Caption := 'Das Ergebnis ist ' + IntToStr(x) + '.';
StrToFloat Versucht, eine Zeichenfolge in einen Realwert umzuwandeln. x := StrToFloat(Edit1.Text);
FloatToStr Wandelt einen Realwert in einen String um. Label1.Caption := 'Das Ergebnis ist ' + FloatToStr(x) + '.';
IntToHex Wandelt einen Integerwert in einen String um, wobei das Zahlenformat im Hexadezimalsystem benutzt wird. Label1.Caption := 'Die Zahl schreibt sich ' + IntToHex(x) + '.';
StrToIntDef Wandelt eine Zeichenfolge in eine Ganzzahl um. Lässt sich kein Interwert konstruieren, wird satt dessen ein Standardwert zurückgegeben. x := StrToFloat(Edit1.Text);


In dem String Autor := 'Bergt' ist an vierter Stelle ein kleines "g". Dieses "g" kann man als String der Länge 1 mit der copy-Funktion heraus lesen ( copy(Autor,4,1)).

Einen String kann man aber auch auffassen als ein Array aus einzelnen Zeichen vom Typ Char. Deshalb kann man auch ein einzelnes Char aus einem String über seine Position innerhalb des Strings heraus lesen: c := Autor[4];.

Variable des Typs Char haben den Vorteil, dass ihnen genau ein Zahlenwert zugeordnet ist: n := ord(c);

Die einzelnen Zeichen lassen sich dann wieder aus einer Nummer hervorbringen.: c := chr(n);

Ein Beispiele dafür findet man hier und hier.

vor

Inhaltsverzeichnis

weiter