capypad
0 Tage Serie
c / intermediate
Snippet

Statische Variablen in Funktionen

Eine statische lokale Variable behält ihren Wert zwischen Funktionsaufrufen bei und wird nur einmal beim Programmstart initialisiert.

snippet.c
c
1
2
3
4
5
void track_calls() {
static int count = 0;
count++;
printf("Called %d times\n", count);
}
Erklärung
1
static int count = 0;
Deklariert eine statische Variable, die für die gesamte Dauer des Programms im Speicher bleibt.
2
count++;
Inkrementiert den Wert, der für den nächsten Funktionsaufruf gespeichert bleibt.