IT-Academy Logo
Sign Up Login Help
Home - Programmieren - Visual Basic - Variablen und Konstanten in VB



Variablen und Konstanten in VB

In diesem Artikel geht es um die Deklaration von Variablen und Konstanten, Regeln zur Namensvergabe, Zuweisung von Werten an Variablen und Konstanten mit Durchführung von Berechnungen. Zusätzlich wird gezeigt, wie und warum man den Datentyp einer Variablen festlegen sollte.


Autor: Tobias Surmann (incsoft)
Datum: 23-04-2003, 10:18:45
Referenzen: keine
Schwierigkeit: Anfänger
Ansichten: 31562x
Rating: 7.33 (3x bewertet)

Hinweis:

Für den hier dargestellte Inhalt ist nicht der Betreiber der Plattform, sondern der jeweilige Autor verantwortlich.
Falls Sie Missbrauch vermuten, bitten wir Sie, uns unter missbrauch@it-academy.cc zu kontaktieren.

[Druckansicht] [Als E-Mail senden] [Kommentar verfassen]



Einleitung

Bevor wir zum eigentlichen Thema dieses Artikels, den Variablen und den Konstanten kommen, müssen wir uns Gedanken über deren Funktion in einem Programm machen. Variablen sind dazu da, um Werte (z.B. Text oder Zahlen) im Arbeitsspeicher des Computers abzulegen und über den Variablennamen wieder auf den im RAM gespeicherten Wert einer Variablen zuzugreifen. Genau genommen setzt sich also eine Variable aus zwei Komponenten zusammen:
  • Variablenname
  • Wert
Da man sich das nun schlecht vorstellen kann, hier ein beliebtes Beispiel: Wir stellen uns den Arbeitsspeicher als einen riesigen Schrank mit tausenden von Schubladen vor. Die Schubladen sind die Variablen. Will der Programmierer nun eine Variable in seinem Programm einführen, so muss er die Schublade zuerst mit dem entsprechenden Namen beschriften. Beim Computer nennt man das Deklaration von Variablen. Dies ist notwendig, da der Computer sonst nicht erkennen kann, womit er es zu tun bekommt. Hat man die Schublade beschriftet, möchte man dort auch gerne etwas hereinlegen, z.B. eine Zeichenfolge oder eine Zahl. Dies entspricht dem Wert einer Variablen. Der Computer reserviert bei Ausführung des Programms automatisch Speicherplatz im Arbeitsspeicher, so dass Sie sich keine Sorgen mehr darum machen müssen, wo genau sich eine Variable im RAM Ihres Computers befindet. Sie müssen einzig den Namen der Variablen wissen, um auf ihren Wert zugreifen zu können. Möchten Sie den Wert einer Variablen wissen, wird die entsprechende Schublade geöffnet und daraus der Wert entnommen. Beim Zuweisen von Werten funktioniert das genauso, nur dass sich hier natürlich der Wert der Variablen verändert.

Hinweis

Enthält eine Variable nach ihrer Deklaration keinen Wert zugewiesen, so ist der Wert der Variablen Empty. Die Initialisierung einer Variablen (d.h. die erste Zuweisung eines Wertes an die Variable) kann in Visual Basic leider nicht gleichzeitig bei der Deklaration geschehen, so wie bei C++ zum Beispiel.

Deklaration

Gehen wir mal näher auf die Bekanntmachung (Deklaration) von Variablen ein. Das zugehörige Schlüsselwort lautet Dim. Damit wird der Computer aufgefordert, für eine neue Variable Speicherplatz im RAM zu reservieren.

'Variablendeklaration
Dim i
Dim Ausgabe
Dim Gesamtsumme


Bei der Deklaration einer Variablen muss der Name hinter Dim angegeben werden. Unter diesem Namen wird Speicherplatz reserviert und auch nur unter diesem Namen kann man den Wert der Variablen auslesen bzw. darauf zugreifen. Im Beispiel werden also die Namen i, Ausgabe und Gesamtsumme festgelegt. Da den einzelnen Variablen noch keine Werte zugewiesen wurden, haben sie standardmäßig nach ihrer Deklaration den Wert Empty (leer). Man kann die einzelnen Variablen auch in einer Zeile deklarieren, man muss sie dabei nur durch ein Komma trennen.

Dim i, Ausgabe, Gesamtsumme


Allerdings führt diese Vorgehensweise bei der Deklaration oft zu Unübersichtlichkeit, deshalb ist man generell besser beraten, wenn man für jede angelegte Variable bei der Deklaration eine Zeile verwendet. Außerdem gibt es - wo wir gerade bei der Übersichtlichkeit sind - noch etwas zu beachten. Variablen werden immer zu Beginn eines Codefragments deklariert. Es ist unüblich, z.B. mitten in einer komplizierten Berechnung plötzlich neue Variablen einzuführen.

Konstanten

Jetzt habe ich aber die ganze Zeit nur von Variablen gesprochen, dabei verweist die Überschrift doch auch auf Konstanten! Keine Sorge, diese habe ich nicht vergessen, sie funktionieren fast genau wie Variablen. Aber eben nur fast… Während Variablen ihren Wert während des Programmverlaufs stetig ändern können, bleiben Konstanten, wie ihr Name schon verrät, immer gleich. Dies ist nützlich wenn man sicher stellen will, dass man nicht unabsichtlich den Wert einer Variablen verändert. Ähnlich wie bei Variablen muss man auch Konstanten deklarieren.

'Konstantendeklaration
Const Pi = 3.14159
Const g = 9.81


Hierbei fällt zunächst das Schlüsselwort Const auf, dass die Anweisung Dim ersetzt. Danach folgt der Name der Konstanten und über das Gleichzeichen wird der Wert direkt zugewiesen. Versucht man nun aus Versehen, innerhalb des Programms den Wert von Pi oder g zu ändern, gibt Visual Basic eine Fehlermeldung aus, was sehr zur Vermeidung von Fehlern bzw. einer langen Fehlersuche beiträgt.

Namensgebung

Jede Variable muss einen Namen haben. Doch bei der Benennung gibt es einige wichtige Regeln, gegen die wir nicht verstoßen sollten, denn sonst werden wir unweigerlich mit einem Syntaxfehler von Visual Basic bestraft. So darf der Name einer Variablen zum Beispiel nicht mit einem Unterstrich ( _ ) oder einer Zahl beginnen. Außerdem darf ein Variablenname nicht länger als 255 Zeichen sein. Diese Beschränkung sollte nicht allzu schwer zu beachten sein, denn den Namen einer Variablen sollte man so kurz und prägnant wie möglich halten. So spart man sich im weiteren Verlauf der Programmierarbeit eine Menge Zeit, da man nicht so viele Zeichen tippen muss. Der Variablenname selbst endet mit dem ersten Leerzeichen, d.h. dass dieser aus maximal einem Wort bestehen kann. Anderenfalls bekommt man wieder eine Fehlermeldung angezeigt. Da man aber manchmal vielleicht doch mehrere Wörter innerhalb eines Namens voneinander trennen möchte, hat es sich als recht nützlich und übersichtlich erwiesen, anstatt eines Leerzeichens einfach einen Unterstrich zu benutzen. Ansonsten können wir innerhalb eines Variablennamens alle zur Verfügung stehenden Zeichen (a-z, A-Z) und Zahlen (0-1) sowie deutsche Sonderzeichen (z.B. ö, ä, ü oder ß) benutzen, wobei ich Ihnen aus Kompatibilitätsgründen von letzterem abraten muss. Fassen wir nun kurz zusammen, was wir über die Namensgebung bei Variablen gelernt haben:
  • Der Name einer Variablen darf nicht mit einer Zahl oder einem Unterstrich beginnen.
  • Der Name darf 1-255 Zeichen beinhalten.
  • Ein Variablenname darf aus Buchstaben (a-z, A-Z), Zahlen (0-1), deutschen Sonderzeichen (ö, ä, ü, ß etc.) sowie aus mehreren Unterstrichen bestehen.
  • Die Variablenbezeichnung darf keine Leerzeichen enthalten.
  • Der Name darf kein reserviertes Schlüsselwort (z.B. End) sein.
Diese Regeln gelten auch für Konstanten.

Zuweisung

Beleuchten wir noch mal genauer die Zuweisung eines Wertes an eine Variable. Bisher haben wir folgende Vorgehensweise kennen gelernt.

Dim Kapital 'Variable erst deklarieren!
Kapital = 10000 'Zuweisung


Dabei wird der Variablen nach ihrer Deklaration ein konstanter Wert (im Beispiel 10000) zugewiesen. Sinn einer Variablen ist es meistens aber, ihr einen variablen Wert zu zuweisen. Das sieht dann z.B. so aus:

'Deklarationen
Dim Kapital
Dim Zinssatz
Dim Zinsen


'Zuweisungen
Kapital = 10000
Zinssatz = 4 / 100
Zinsen = Kapital * Zinssatz


'Ausgabe
MsgBox "Bei einem Kapital von " & Kapital & " EUR und einem Zinssatz von " & Zinssatz * 100 & "% bekommen Sie " & Zinsen & " EUR an Zinsen!"


Gegeben sind Kapital und Zinssatz. Daraus sollen die Zinsen berechnet werden. Dazu werden zunächst einmal alle drei Variablen deklariert. Auch das Resultat der Berechnung - die Zinsen - muss in einer eigenen Variablen gespeichert werden. Diesen Wert benötigen wir später nämlich noch für die Ausgabe. Zuerst weisen wir über

Kapital = 10000


der Variablen Kapital den gewünschten Wert zu. Das kennen wir ja schon. Also geht's gleich weiter mit der nächsten Zeile. Hier bekommt die Variable Zinssatz durch eine Berechnung einen Wert zugewiesen.

Zinssatz = 4 / 100


Der Zinssatz beträgt hierbei 4%. Zuerst wird nämlich der Wert auf der rechten Seite des Gleichheitszeichen berechnet und dann an die Variable auf der linken Seite zugewiesen. Hier beträgt Zinssatz nach Ausführung dieser Zeile 0.04. Nun haben wir die beiden Werte, mit deren Hilfe wir die Zinsen ausrechnen können. Denn man kann nicht nur mit Zahlen, sondern auch mit Variablen bzw. Konstanten rechnen. Das beweist die folgende Zeile.

Zinsen = Kapital * Zinssatz


Hier geschieht eigentlich das Gleiche wie zuvor. Die Werte aus Kapital und Zinssatz werden miteinander multipliziert, d.h. für den Computer steht nun auf der rechten Seite 10000 * 0.04. Er errechnet das Ergebnis 10000 * 0.04 = 400 und weist dieses der Variablen Zinsen zu. Das Ergebnis ist nun in dieser Variablen gespeichert und wir brauchen uns jetzt nur noch um die korrekte Ausgabe des errechneten Wertes kümmern. Dazu nutzen wir eine Dialogbox, die wir über MsgBox aufrufen. Für die Ausgabe kombinieren wir statischen Text, also z.B.

"Bei einem Kapital von"


mit dem Wert aus den Variablen, indem wir diese über das &-Zeichen miteinander verknüpfen. Es ergibt also z.B. die Anweisung

"Bei einem Kapital von " & Kapital


den verknüpften Ausgabetext

"Bei einem Kapital von 10000"


Jetzt verstehen wir auch, warum hinter "von" ein Leerzeichen steht. Denn ansonsten würde der Computer "von" und "10000" zusammenschreiben. Genau so gehen wir auch bei der Ausgabe der anderen Werte vor, sodass uns bei Ausführung des Programms am Ende die Dialogbox wie in der folgenden Abbildung angezeigt wird.



Experimentieren Sie ein bisschen mit dem Programm und dem Quelltext herum. Egal welchen Wert sie den Variablen geben, das Ergebnis ist immer richtig. Ersetzen Sie z.B. den Wert der Variablen Kapital durch 250000 und geben Sie als Zinssatz satte 20 / 100 an. Die korrekte Ausgabe (50000 EUR) erfolgt sofort. Somit wäre dies ein Beweis dafür, dass man einer Variablen einen errechneten bzw. durch andere Variablen änderbaren Wert zuweisen (s. Zinsberechnung) und mit dem Ergebnis als neuen Variablenwert weiterrechnen kann.

Datentypen

Jetzt werden wir etwas immens wichtiges für die Programmierung mit einer modernen Programmiersprache lernen. Deshalb sollten Sie hier besonders aufpassen, denn dieser Abschnitt wird wie gesagt einige sehr wichtige Grundlagen für die Entwicklung mit Visual Basic erklären. Erinnern wir uns noch mal kurz an die Deklaration einer Variablen zurück. Wie ging das noch mal schnell? Genau, mit der Anweisung Dim! Wir haben bisher gelernt eine Variable so zu deklarieren:

Dim BenutzerName


Dabei weiß der Computer schon mal, dass er für die Variable mit der Bezeichnung BenutzerName Speicher im RAM des Computers reservieren soll. Leider weiß er aber nicht genau, wie viel Speicher das sein muss, denn wir haben keine genaueren Angaben gemacht. So muss der PC davon ausgehen, dass wir vielleicht auch sehr viel Platz brauchen und reserviert daher vorsichtshalber ziemlich viel Speicher, was natürlich in den meisten Fällen Platzverschwendung ist und obendrein noch zu einer schlechten Performance unseres Programms beiträgt. Aber langsam jetzt… Jetzt kommen die Datentypen ins Spiel. Sie definieren genau, wie viel Speicher eine Variable verwenden darf und was genau überhaupt in einer Variablen gespeichert wird. In unserem Beispiel gehen wir davon aus, dass wir in BenutzerName einen Text, z.B. "Joachim" oder "Klaus" speichern wollen. Für diese Aufgabe gibt es den Datentypen String. So, und wie macht man das jetzt mit der Deklaration?

Dim Variable As Datentyp


Das ist erstmal die allgemeine Form. Auf unser Beispiel kommen wir gleich wieder zurück. Zuerst werde ich allerdings die allgemeine Schreibweise erklären. Den ersten Teil der Anweisung kennen wir ja schon.

Dim Variable


Hier wird dem Computer eine neue Variable bekannt gemacht. Danach folgt etwas Neues, die Aufforderung an den Computer, einen bestimmten Datentypen für die Variable zu benutzen.

As Datentyp


Diese Aufforderung wird durch das Schlüsselwort As eingeleitet. Dahinter folgt der Name des Datentyps, der durch die Programmmiersprache festgelegt ist. Wir können nämlich in einer Variablen nicht nur Texte (sog. Strings bzw. auch Zeichenketten), sondern auch viele verschiedene Zahlenarten (Ganzzahlen, Kommazahlen etc.) und Daten mit Uhrzeit speichern. Visual Basic verfügt von Haus aus über einen vorgegebenen Satz von Datentypen. Kommen wir aber zunächst zurück zu unserem Beispiel. Die Deklaration für die Variable zur Speicherung des Benutzernamens eines Anwenders wird folgerichtig so deklariert:

Dim BenutzerName As String


So erhält der Computer die Arbeitsanweisung, im Speicher Platz für die Zeichenkette mit der Bezeichnung BenutzerName zu schaffen. Die Zuweisung

Benutzername = "Norbert"


hätte zwar auch ohne die Deklaration As String funktioniert, es wäre aber automatisch der Datentyp Variant benutzt worden. Dieser hat zur Besonderheit, dass er recht speicherintensiv und sehr langsam bei komplexen Berechnungen ist. Sie sollten ihn daher nur verwenden wenn es unbedingt notwendig ist. Visual Basic stellt uns die folgende Datentypen bei der Programmierung zur Verfügung.

Datentyp Speicherbedarf Wertebereich
Boolean 2 Bytes 0 (False) oder -1 (True)
Byte 1 Byte 0 bis 255
Currency 8 Bytes -922.337.203.685.477,5808 bis 922.337.203.685.477,5807
Date 8 Bytes 01. Januar 100 bis 31. Dezember 9999 und Uhrzeiten im Bereich von 0:00:00 bis 23:59:59
Double 8 Bytes -1,797693 * 10^-324 bis
+1,797693 * 10^324
Integer 4 Bytes Ganze Zahlen von -32768 bis +32768
Long 4 Bytes -2.147.483.648 bis 2.147.483.647
Object 4 Bytes 32-Bit-Adressen, die auf Objekte verweisen.
Single 4 Bytes -3,402823 * 10^38 bis 3,402823 * 10^38
String 10 Bytes + Länge der Zeichenkette 0 bis ca. 2 Milliarden Zeichen
Variant 22 Bytes + Länge der Zeichenkette Jeder numerische Wert im Bereich Double und jeder String.


Zusammenfassung

In diesem Artikel haben Sie folgendes gelernt:
  • Deklaration von Variablen und Konstanten
  • Regeln zur Namensvergabe
  • Zuweisung von Werten an Variablen und Konstanten
  • Durchführung von Berechnungen mit Variablen
  • Festlegen des Datentyps von Variablen


[back to top]



Userdaten
User nicht eingeloggt

Gesamtranking
Werbung
Datenbankstand
Autoren:04503
Artikel:00815
Glossar:04116
News:13565
Userbeiträge:16551
Queueeinträge:06236
News Umfrage
Ihre Anforderungen an ein Online-Zeiterfassungs-Produkt?
Mobile Nutzung möglich (Ipone, Android)
Externe API Schnittstelle/Plugins dritter
Zeiterfassung meiner Mitarbeiter
Exportieren in CSV/XLS
Siehe Kommentar



[Results] | [Archiv] Votes: 1136
Comments: 0