Statische Variablen sind ein nützliches Teil C. Sie geben Ihnen Flexibilität bei der Herstellung komplexer Funktionen, die Daten zurückgeben , aber sie kann schwierig zu verstehen und effektiv zu nutzen . Anleitung
Deklarieren einer statischen Variable
1
Wisse, dass statische Variablen immer in einer C-Funktion deklariert , aber im Gegensatz zu anderen Variablen , deren Werte weiter zu existieren und bleiben erhalten , auch nachdem die Funktion beendet .
2
deklarieren Sie eine statische Variable, indem Sie die gleiche Syntax , als würden Sie eine normale lokale Variable deklarieren , sondern gehen die Erklärung mit dem Wort statisch, wie folgt aus:
static int sum = 0;
3 erwarten Initialisierung nur das erste Mal, wenn Sie die Funktion aufrufen passieren. Spätere Zeiten, wird der vorherige Wert noch da sein . Wenn Sie die Initialisierung auslassen, wird es automatisch auf 0 initialisiert werden.
4
Verwenden Sie die Variable in der Funktion wie jede andere .
5
Beachten Sie, dass , wie jede andere lokale Variable kann eine statische Variable nicht außerhalb der Funktion bezeichnet werden. Allerdings, wenn Sie sich einen Zeiger auf sie , kann der Zeiger dereferenziert erfolgreich werden, da die Variable existiert .
Wissen Wann verwendet Statische Variablen
6
Nutzungsbedingungen eine statische Variable , damit Ihre Funktion einen eigenen Speicher , der über trägt von einem Anruf zu einem anderen haben . Zum Beispiel könnte eine Funktion, die analysiert und bekommt die nächste Zeile einer Datei benötigen, um intern zu verfolgen, wo es in der Datei.
7
Verwenden Sie eine statische Variable als eine Möglichkeit, ein Stück bieten der Speicher zum Speichern eines Ergebnisses . Zum Beispiel könnte eine Funktion zur Verkettung von Zeichenfolgen eine statische Variable, in der das Ergebnis der Verkettung speichern und einen Zeiger darauf . Die statischen Variablen -Speicher ist ständig verfügbar , wird aber automatisch freigegeben, wenn das Programm beendet , genau wie jede andere lokale Variable .
8
Nutzungsbedingungen statische Variablen für eine laufende Summe oder ähnliche Anhäufung werden. Betrachten Sie dieses Beispiel : int
laufende_gesamtsumme (int num) {static int sum = 0; sum + = num ; Rückkehr Summe ;} Jedes Mal, wenn Sie diese Funktion aufrufen , hält sie und gibt eine laufende Summe aller Zahlen in sie übergeben .