Gewusst wie: deklarieren eine statische Variablen in C

April 15

Statische Variablen sind nützliche Teil C. Sie geben Ihnen Flexibilität bei der Funktionen, die komplexere Daten zurückgeben können, sie jedoch schwierig zu verstehen und effektiv zu nutzen.

Anweisungen

Deklarieren Sie eine statische Variable

1 Wissen Sie, dass statische Variablen sind immer innerhalb einer C-Funktion deklariert, aber im Gegensatz zu anderen Variablen, deren Werte weiter bestehen und beibehalten werden, selbst nachdem die Funktion beendet wird.

2 Deklarieren Sie eine statische Variable mit derselben Syntax wie Sie eine normale lokale Variable deklarieren, aber die Erklärung mit dem Wort statisch, wie diese vorangehen würden:

static Int Summe = 0;

3 Erwarten Sie die Initialisierung nur beim ersten Mal passieren, das Sie die Funktion aufrufen. Nachfolgenden Zeiten, der vorherige Wert wird noch da sein. Wenn Sie die Initialisierung weglassen, wird es automatisch auf 0 initialisiert werden.

4 Verwenden Sie die Variable in der Funktion, so wie jede andere.

5 Beachten Sie, dass, wie jede andere lokale Variable, kann keine statische Variable außerhalb der Funktion bezeichnet werden. Jedoch wenn es heraus einen Zeiger übergeben wird, kann der Zeiger erfolgreich dereferenziert werden da die Variable noch vorhanden ist.

Wissen Sie, wann Sie statische Variablen verwenden

6 Verwenden Sie eine statische Variable, damit Ihre Funktion einen eigenen Speicherbereich zu haben, der von einem Aufruf zum anderen übernimmt. Z. B. eine Funktion, die Ruft und analysiert die nächste Zeile einer Datei benötigen konnten, um intern zu verfolgen wo ist es in der Datei.

7 Verwenden Sie eine statische Variable als eine Möglichkeit, einen Teil des Speichers für ein Ergebnis speichert bereitzustellen. Beispielsweise könnte eine Funktion zum Verketten von Zeichenfolgen verwenden eine statische Variable zum Speichern Sie das Ergebnis der Verkettung und einen Zeiger zu ihr zurückkehren. Die statische Variable Speicher ist ständig verfügbar, sondern wird automatisch freigegeben, wenn das Programm beendet wird, genau wie jede andere lokale Variable.

8 Verwenden Sie statische Variablen für eine Ansammlung läuft total oder ähnliches. Betrachten Sie Folgendes Beispiel:

Int Running_total (Int Num) {}static Int Summe = 0;Sum += Num;Summe zurückgegeben;} Bei jedem Aufruf dieser Funktion hält und gibt es eine laufende Summe aller Zahlen übergeben.

Tipps & Warnungen

  • Verwenden Sie statische Variablen, um zu vermeiden, dass eine Variable in die C-Funktion ohne Grund anders als übergeben aktualisieren und seinen Wert erhalten.
  • Achten Sie Nebenwirkungen, wenn Sie einen Zeiger auf die statische Variable zurückgeben. Wenn Sie die Funktion mehrmals aufrufen, wird das Ergebnis der einzelnen beim nächsten überschrieben.
  • Es ist gefährlich, einen Zeiger auf die statische Variable als Parameter an die Funktion zu verwenden. Zum Beispiel in einer Funktion zum Verketten von Zeichenfolgen, versuchen Sie nicht, etwas auf das Ergebnis einer früheren Verkettung verketten!