Variable (Informatik): Unterschied zwischen den Versionen

Aus KGS-Wiki
(Der Anfang ist gemacht)
 
(Deklaration)
Zeile 4: Zeile 4:
Eine Variable hat immer einen Namen, den so genannten '''Bezeichner''' (engl. ''identifier''). Mit diesem Namen kann auf den Wert der Variablen zugegriffen werden.
Eine Variable hat immer einen Namen, den so genannten '''Bezeichner''' (engl. ''identifier''). Mit diesem Namen kann auf den Wert der Variablen zugegriffen werden.


== Analogie ==
==Analogie==
Man kann sich eine Variable wie eine beschriftete Box mit einem Inhalt vorstellen. Die Beschriftung ist hier der Bezeichner, der Inhalt ist der Wert.
Man kann sich eine Variable wie eine beschriftete Box mit einem Inhalt vorstellen. Die Beschriftung ist hier der Bezeichner, der Inhalt ist der Wert.


'''Konkretes Beispiel:''' in meiner Küche steht eine Box mit der Beschriftung <code>MEHL</code>. Wenn ich meine Freundin bitte, mir die Box mit der Beschriftung <code>MEHL</code> zu geben, weiß sie, was ich will. Der Bezeichner dient also dazu, eine Variable eindeutig zu identifizieren.
'''Konkretes Beispiel:''' in meiner Küche steht eine Box mit der Beschriftung <code>MEHL</code>. Wenn ich meine Freundin bitte, mir die Box mit der Beschriftung <code>MEHL</code> zu geben, weiß sie, was ich will. Der Bezeichner dient also dazu, eine Variable eindeutig zu identifizieren.


Den Wert einer Variable kann man beliebig oft [[Ausdruck|abfragen]] ("Schatz, wie viel ist noch in der <code>MEHL</code>-Dose?" - "Vielleicht 300 Gramm?"), verändern (indem man Mehl entnimmt oder hinzufügt) oder ganz löschen. Das Ergebnis einer Abfrage gibt dabei immer den aktuellen Wert einer Variablen zurück. Alte vorherigen Werte gehen beim Überschreiben verloren.
Den Wert einer Variable kann man beliebig oft mming-variable|thumb| ("Schatz, wie viel ist noch in der ie eine beschrift-Dose?" - "Vielleicht 300 Gramm?"), verändern (indem man Mehl entnimmt oder hinzufügt) oder ganz löschen. Das Ergebnis einer Abfrage gibt dabei immer den aktuellen Wert einer Variablen zurück. Alte vorherigen Werte gehen beim Überschreiben verloren.
{{Achtung|Der Bezeichner einer Variable hat nicht zwingend etwas mit dem Inhalt zu tun! In die <code>MEHL</code>-Dose könnte ich auch Zucker, Linsen oder schmutzige Socken füllen! Der Wert erinnert Variablen wird ausschließlich von dem Programm festgelegt, in dem sie verwendet wird!}}
In manchen [[Programmiersprache|Programmiersprachen]] haben Variablen feste [[Datentyp|Datentypen]], die festlegen, wie viel Speicher für diese Variable zur Verfügung steht und welche Werte darin gespeichert werden dürfen. Zum Beispiel kann eine Variable vom Typ <code>byte</code> in [[C (Programmiersprache)|C]] nur ganzzahlige Werte zwischen -128 und 127 annehmen. Meine <code>MEHL</code>-Dose hat auch nur ein begrenztes Fassungsvermögen.


== Verwendung ==
{{Achtung|Der Bezeichner einer Variable hat nicht zwingend etwas mit dem Inhalt zu tun! In die <code>MEHL</code>-Dose könnte ich auch Zucker, Linsen oder schmutzige Socken füllen! Der Wert einer Variablen wird ausschließlich von dem Programm festgelegt, in dem sie verwendet wird!}}
Variablen bilden die einfachste Form des "Gedächtnisses" eines [[Computerprogramm|Computerprogramms]] oder [[Algorithmus]]. Komplexere Daten, die mehrere Informationen umfassen, müssen mit [[Datenstruktur|Datenstrukturen]] gespeichert werden.
{{Hinweis|Der Bezeichner einer Variable ''sollte'' zu deren Wert passen. Genau so, wie ich von einer mit <code>MEHL</code> beschrifteten Dose erwarte, dass sie Mehl enthält, erwarte ich von einer Variable namens <code>vorname</code>, dass darin jemandes Vorname gespeichert wird. Dies gilt umso mehr, weil man in der Regel nicht alleine, sondern im Team an einem Programm arbeitet.}}
{{Lückenhaft|Begriffe wie Deklaration, Initialisierung, Zuweisung usw. mit Sprachbeispielen
In manchen [[Programmiersprache]]n haben Variablen feste [[Datentyp]]en, die festlegen, wie viel Speicher für diese Variable zur Verfügung steht und welche Werte darin gespeichert werden dürfen. Zum Beispiel kann eine Variable vom Typ <code>byte</code> in [[C (Programmiersprache)|C]] nur ganzzahlige Werte zwischen -128 und 127 annehmen. Meine <code>MEHL</code>-Dose hat auch nur ein begrenztes Fassungsvermögen.
}}


== Weblinks ==
==Verwendung ==
 
Variablen bilden die einfachste Form des "Gedächtnisses" eines [[Computerprogramm]]s oder [[Algorithmus]]. Komplexere Daten, die mehrere Informationen umfassen, müssen mit [[Datenstruktur]]en gespeichert werden.
 
===Deklaration===
[[Datei:AppInventor Deklaration Variable.png|rechts|thumb|Im AppInventor müssen Variablen deklariert werden, bevor sie verwendet werden können.]]
[[Datei:Scratch Neue Variable.svg|mini|Auch in [[Scratch]] müssen Variablen vor der Verwendung deklariert werden.]]
In vielen Programmiersprachen müssen Variablen '''deklariert''' werden, bevor sie verwendet werden können. Das heißt, dass ihr Name sowie gegebenenfalls ihr Datentyp oder Informationen über ihre [[Sichtbarkeit]] festgehalten werden müssen. Im [[AppInventor]] müssen Variablen mit den Blöcken <code>global initialisieren</code> oder <code>lokal initialisieren</code> deklariert werden und können nur dann verwendet werden, wenn diese Blöcke vorhanden sind.
 
In Sprachen wie [[Java (Programmiersprache)|Java]] deklariert man Variablen zum Beispiel so:
<syntaxhighlight lang="java" line="1">
int x;
char y;
boolean z;
</syntaxhighlight>
Das bedeutet: es werden drei Variablen <code>x</code>, <code>y</code> und <code>z</code> angelegt. In <code>x</code> ''darf nur'' eine ganze Zahl gespeichert werden, in <code>y</code> ''nur'' ein Zeichen und in <code>z</code> ''nur'' ein [[Wahrheitswert]]. Damit wird zugleich der nötige Speicher für diese Variablen reserviert: 4 [[Byte]] für den <code>int</code>, 2 Byte für den <code>char</code> und 1 Bit für den <code>boolean</code>.
 
Durch die Pflicht zur Deklaration von Variablen kann bereits beim [[Compiler|Kompilieren]] des Programms geprüft werden, ob alle verwendeten Variablen ganz sicher existieren und auch so verwendet werden dürfen, wie es im Programm steht.
 
=== Zuweisung ===
{{Todo}}
 
==Weblinks==


* {{Inf-Schule|6.3.2.1|Variablen}}
* {{Inf-Schule|6.3.2.1|Variablen}}

Version vom 17. April 2024, 23:35 Uhr

Man kann sich eine Variable wie eine beschriftete Box vorstellen

In der Informatik bezeichnet man als Variable einen Verweis auf ein Stück Speicher, in dem eine Information festgehalten werden kann. Diese Information kann aus dem Speicher ausgelesen werden, ebenso kann eine neue Information hineingeschrieben werden. Bei diesem Vorgang geht die alte Information verloren.

Eine Variable hat immer einen Namen, den so genannten Bezeichner (engl. identifier). Mit diesem Namen kann auf den Wert der Variablen zugegriffen werden.

Analogie

Man kann sich eine Variable wie eine beschriftete Box mit einem Inhalt vorstellen. Die Beschriftung ist hier der Bezeichner, der Inhalt ist der Wert.

Konkretes Beispiel: in meiner Küche steht eine Box mit der Beschriftung MEHL. Wenn ich meine Freundin bitte, mir die Box mit der Beschriftung MEHL zu geben, weiß sie, was ich will. Der Bezeichner dient also dazu, eine Variable eindeutig zu identifizieren.

Den Wert einer Variable kann man beliebig oft mming-variable|thumb| ("Schatz, wie viel ist noch in der ie eine beschrift-Dose?" - "Vielleicht 300 Gramm?"), verändern (indem man Mehl entnimmt oder hinzufügt) oder ganz löschen. Das Ergebnis einer Abfrage gibt dabei immer den aktuellen Wert einer Variablen zurück. Alte vorherigen Werte gehen beim Überschreiben verloren.

⚠️
Achtung

Der Bezeichner einer Variable hat nicht zwingend etwas mit dem Inhalt zu tun! In die MEHL-Dose könnte ich auch Zucker, Linsen oder schmutzige Socken füllen! Der Wert einer Variablen wird ausschließlich von dem Programm festgelegt, in dem sie verwendet wird!

👉
Hinweis

Der Bezeichner einer Variable sollte zu deren Wert passen. Genau so, wie ich von einer mit MEHL beschrifteten Dose erwarte, dass sie Mehl enthält, erwarte ich von einer Variable namens vorname, dass darin jemandes Vorname gespeichert wird. Dies gilt umso mehr, weil man in der Regel nicht alleine, sondern im Team an einem Programm arbeitet.

In manchen Programmiersprachen haben Variablen feste Datentypen, die festlegen, wie viel Speicher für diese Variable zur Verfügung steht und welche Werte darin gespeichert werden dürfen. Zum Beispiel kann eine Variable vom Typ byte in C nur ganzzahlige Werte zwischen -128 und 127 annehmen. Meine MEHL-Dose hat auch nur ein begrenztes Fassungsvermögen.

Verwendung

Variablen bilden die einfachste Form des "Gedächtnisses" eines Computerprogramms oder Algorithmus. Komplexere Daten, die mehrere Informationen umfassen, müssen mit Datenstrukturen gespeichert werden.

Deklaration

Im AppInventor müssen Variablen deklariert werden, bevor sie verwendet werden können.
Auch in Scratch müssen Variablen vor der Verwendung deklariert werden.

In vielen Programmiersprachen müssen Variablen deklariert werden, bevor sie verwendet werden können. Das heißt, dass ihr Name sowie gegebenenfalls ihr Datentyp oder Informationen über ihre Sichtbarkeit festgehalten werden müssen. Im AppInventor müssen Variablen mit den Blöcken global initialisieren oder lokal initialisieren deklariert werden und können nur dann verwendet werden, wenn diese Blöcke vorhanden sind.

In Sprachen wie Java deklariert man Variablen zum Beispiel so:

int x;
char y;
boolean z;

Das bedeutet: es werden drei Variablen x, y und z angelegt. In x darf nur eine ganze Zahl gespeichert werden, in y nur ein Zeichen und in z nur ein Wahrheitswert. Damit wird zugleich der nötige Speicher für diese Variablen reserviert: 4 Byte für den int, 2 Byte für den char und 1 Bit für den boolean.

Durch die Pflicht zur Deklaration von Variablen kann bereits beim Kompilieren des Programms geprüft werden, ob alle verwendeten Variablen ganz sicher existieren und auch so verwendet werden dürfen, wie es im Programm steht.

Zuweisung

🏗
Baustelle

Dieser Abschnitt wird gerade überarbeitet


Weblinks