In diesem kurzen Bericht erläutere ich die Funktionsweise und Nutzung von Variablen in der Programmiersprache Delphi.
Was sind Variablen und Konstanten? Was sind Datentypen?
Was für Typumwandlungen gibt es und wie nutze ich sie?
Was sind Variablen?
Variablen sind jedem bekannt, der schon einmal Mathematik-Unterricht hatte. Variablen sind einfach dafür da, irgendwelche Daten (Eingaben, Berechnungsergebnisse usw.) im Arbeitsspeicher abzulegen. Über den Variablennamen kann man direkt auf den Wert zugreifen.
Man sollte Variablen selbsterklärende Namen geben. Groß- und Kleinschreibung ist nicht von Bedeutung, jedoch dürfen nur Buchstaben, Zahlen und der Unterstrich verwendet werden. Der Variablenname muss mit einem Buchstaben beginnen.
Deklaration
Man muss Variablen dem Compiler bekannt machen, bevor sie benutzt werden können. Das nennt man Deklaration.
Vor einer Deklaration wird das reservierte Wort “var” geschrieben. Dann kommt der Name der Variablen, hinter einem Doppelpunkt der Typ. Mehrere Variablen vom gleichen Typ können in einer Zeile stehen, indem man sie durch Kommata trennt.
var Zahl1 : Integer;
Zahl2, Zahl3 : Real';
Text : String;
Man unterscheidet jedoch noch unter globalen Variablen und lokalen Variablen.
Globale Variablen deklariert man im Interface-Teil der Unit nach der type-Angabe.
(Wer nicht weiß, was der Interface-Teil ist und/oder wo er sich befindet, der schaut bitte in meinem Tutorial “Der Aufbau einer Unit” nach.)
Lokale Variablen definiert man für einzelne Prozeduren direkt nach deren Kopfzeilen.
procedure Testprozedur;
var Zahl1:Integer;
begin
Zahl1 := 24;
end;
Datentypen
Bevor eine Variable verwendet werden kann, muss man wissen, welche Daten sie aufnehmen soll. Variablen sind “Behälter” für einen Wert, der Platz im Arbeitsspeicher belegt.
Der Datentyp ist dagegen der Bauplan, nach dem die Variable erstellt wird.
Hier eine kleine Übersicht über die wichtigsten Datentypen:
Typ | Wertebereich | Beispiel | ||
---|---|---|---|---|
Deklaration | Zuweisung | |||
Integer | ganze Zahlen | -2147483648 bis 2147483647 | var Zahl: Integer; | zahl:=14; |
Real | Gleitkommazahlen | 5.0 x 10324 .. 1.7 x 10308 | var Zahl: Real; | zahl:=3.15; |
String | Zeichenketten | ca. 231 Zeichen | var Text: String; | Text:='Irgendwas...'; |
Char | Zeichen | 1 Zeichen | var Zeichen: Char; | Zeichen:='a'; |
Boolean | Wahrheitswert | true, false | var Richtig: Boolean; | Richtig:=true; |
Typumwandlung
Vorsicht ist geboten, wenn man Werte auf Variablen unterschiedlicher Datentypen übertragen möchte. Die folgende Tabelle zeigt, ob und welche Funktion von Nöten ist, oder ob man eine einfache Zuweisung vornehmen kann:
Von | Nach | Funktion | Beispiel |
---|---|---|---|
Integer | Real | einfache Zuweisung | zahl2 := zahl1; |
Real | Integer | – Nachkommastellen abschneiden (trunc) – kaufm. Runden (round) – aufrunden (ceil, Unit Math) – abrunden (floor, Unit Math) | zahl2 := trunc(zahl1); |
Integer | String | IntToStr | textzahl := IntToStr(zahl); |
Real | String | FloatToStr FloatToStrF | textzahl := FloatToStr(zahl); |
String | Interger | StrToInt StrToIntDef | zahl := StrToInt(textzahl); |
String | Real | StrToFloat | zahl := StrToFloat(textzahl); |
String | Char | Zugriff über Index (1 ist erstes Zeichen) | zeichen := text[1]; |
Char | String | einfache Zuweisung | text := zeichen; |
Konstanten
Konstanten sind Variablen, die innerhalb des Programms ausgelesen, aber nicht überschrieben (also verändert) werden dürfen – Sie bleiben konstant. Deklariert werden sie an den gleichen Stellen wie Variablen, allerdings mit dem Schlüsselwort const, einem Gleichheitszeichen und ohne Angabe eines Datentyps:
const
Version = '1.23';
Text = 'Abcd efg';