Einfache Deklarationen

Content

Variablen können global oder lokal deklariert werden. Globale Variablen sind von Anfang an initialisiert und stehen über die gesamte Laufzeit des Programms zur Verfügung. Die Lebenszeit lokaler Variablen beschränkt sich auf den umgebenden Block (compound statement). Globale Variablen leben in einem speziellen Speicherbereich, dessen Umfang durch den ld (link-editor) noch vor der Laufzeit festgelegt wird. Lokale Variablen leben hingegen auf dem Stack und haben, wenn sie nicht expliziert initialisiert sind, keinen wohldefinierten Wert zu Beginn.

Werfen Sie ein Blick auf folgendes Programm:

#include <iostream>

int answer = 42;

int main() {
   for (int i = 0; i < 5; ++i) {
      int val;
      std::cout << val << std::endl;
      val = answer + i;
   }
}

Fragen hierzu: