3.3    Initialisierung und Zuweisung von Werten

Nachdem Sie eine Variable definiert haben, besitzt diese noch keinen festen Wert (Ausnahmen, die noch behandelt werden, sind globale Variablen, sowie mit static ausgezeichnete Variablen). Aber wenn sie noch keinen festen Wert hat, was steht dann in ihrer Speicheradresse? Meistens steht dort ein zufälliger Wert, der sich einfach vorher schon darin befunden hat (genauer gesagt, ein undefinierter Wert).

Einen Wert müssen Sie der Variablen erst noch zuweisen. Dies können Sie beispielsweise mit dem Zuweisungsoperator (=) erledigen:

int ivar;          // Definition
ivar = 12345; // Zuweisung

Sie können auch eine Eingabefunktion verwenden, wie z. B. scanf(), nachdem Sie das entsprechende Kapitel gelesen haben. Sie können aber auch gleich bei der Definition von Variablen einen Initial- bzw. Anfangswert zuweisen. Dieser Vorgang wird als Initialisierung bezeichnet. Im folgenden Beispiel wird einer Variablen mit dem Bezeichner ivar vom Datentyp int direkt bei der Definition der Wert 12345 zugewiesen:

int ivar = 12345;   // Initialisierung

Eine Initialisierung findet somit ausschließlich bei der Definition einer Variablen statt, wohingegen eine Zuweisung jederzeit und auch mehrmals notiert werden kann.

Variablen sofort mit einem Wert initialisieren

Damit Sie nicht versehentlich mit einer nicht initialisierten Variablen arbeiten, was zu undefinierten Ergebnissen führen könnte, sollten Sie es sich zur Gewohnheit machen, Variablen schon bei der Definition mit einem Anfangswert zu initialisieren, z. B.:

int ivar = 0; // ivar mit 0 initialisiert