Heim  >  Artikel  >  Backend-Entwicklung  >  Was bedeutet statisch in der Sprache C?

Was bedeutet statisch in der Sprache C?

angryTom
angryTomOriginal
2020-02-06 13:47:0182942Durchsuche

Was bedeutet statisch in der Sprache C?

Was bedeutet statisch in der C-Sprache

Statisch wird in der C-Sprache zur Beschreibung statischer Variablen verwendet.

1. Wenn es außerhalb der Funktion definiert wird, ähnelt seine Wirkung der einer globalen Variablen, dh die durch static angegebene Variable kann in der aktuellen C-Programmdatei verwendet werden.

2. Wenn sie innerhalb einer Funktion definiert ist, wird diese Variable nur einmal initialisiert. Auch wenn die Funktion erneut aufgerufen wird, wird die statische Variable nicht erneut initialisiert, sodass der Wert dieser Variablen immer erhalten bleibt Wenn wir die Funktion dann erneut aufrufen, werden die beim letzten Funktionsaufruf gespeicherten Ergebnisse weiterhin gespeichert.

Empfohlenes Lernen: Video-Tutorial zur C-Sprache

In der C-Sprache ist die Funktion des statischen Schlüsselworts wie folgt:

1. Beim Ändern von Variablen werden die durch static geänderten statischen lokalen Variablen nur einmal ausgeführt und der Lebenszyklus der lokalen Variablen wird verlängert, bis die Ausführung des Programms abgeschlossen ist.

2. Wenn statisch eine globale Variable ändert, kann auf diese globale Variable nur in dieser Datei und nicht in anderen Dateien zugegriffen werden, selbst wenn es sich um eine externe externe Deklaration handelt.

3. Wenn statisch eine Funktion ändert, kann diese Funktion nur in dieser Datei aufgerufen werden und kann nicht von anderen Dateien aufgerufen werden. Durch Static geänderte lokale Variablen werden im statischen Variablenbereich des globalen Datenbereichs gespeichert.

Beispiel:

static int a;
int b;
void func(void)
{
    static int c;
    int d;
}

Im obigen Programm sind a und b beide globale Variablen. Der Unterschied zwischen den beiden besteht darin, dass b von anderen Dateien verwendet werden kann a kann nur in dieser Datei verwendet werden. Dies ist die Auswirkung von static auf globale Variablen.
Der Unterschied zwischen c und d besteht darin, dass d eine automatische Variable ist. Nachdem die Funktion func ausgeführt wurde, wird d automatisch freigegeben. C wird jedoch nicht freigegeben, wenn die Funktion func das nächste Mal aufgerufen wird. Der Wert von c behält den letzten Wert und wird weiterhin verwendet.

Das obige ist der detaillierte Inhalt vonWas bedeutet statisch in der Sprache C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn