3.10    Konstanten erstellen

Benötigen Sie einen unveränderbaren Wert, können Sie eine Konstante verwenden. Der Sinn und Zweck einer solchen Konstanten ist es, dass der Wert zur Laufzeit des Programms nicht mehr verändert werden kann. Das Gegenstück zu einer Konstanten ist eine Variable. Eine Konstante definieren Sie, indem Sie vor den eigentlichen Datentyp das Schlüsselwort const setzen:

const int cIvar = 365;      // Integer-Konstante
const char dquote = '"'; // Zeichenkonstante
const float pi = 3.141592; // Fließkommakonstante

Wenn Sie nun aus Versehen versuchen, den Wert der Konstanten zu verändern, gibt der Compiler zur Übersetzungszeit den Fehler aus. Somit können const-Werte auf gewöhnlichem Wege der direkten Zuweisung nicht mehr verändert werden. Wenn Sie in dem folgenden Beispiel versuchen, den Wert von cIvar zu ändern, wird sich der Compiler mit einer Fehlermeldung bei Ihnen beschweren:

const int cIvar = 365;  // Konstante
cIvar = 364; // Fehler, da const

In der Praxis werden Konstanten mit const recht häufig bei Variablen, Zeigern, Parametern von Funktionen usw. verwendet – eben immer, wenn ein Wert nicht mehr verändert werden soll.

Typ-Qualifikatoren

Bei dem Schlüsselwort const handelt es sich um einen Typqualifikator (type qualifier). Über solche Qualifikatoren kann ein Datentyp bei der Vereinbarung modifiziert werden. Neben const gibt es noch weitere Qualifikatoren wie volatile, restrict (seit C99) oder _Atomic (seit C11).