Statische Variablen in c

Statische Variablen in c
C ist eine sehr flexible Sprache, wenn es darum geht, verschiedene Variablen in einer Funktion oder außerhalb der Funktion zuzuweisen. Eine statische Variable ist eine dieser Variablen, die in einem Programm „statisch“ deklariert werden. Der Startwert der statischen Variablen ist Null. Statische Variablen funktionieren weiterhin, während das Programm ausgeführt wird.

Syntax statischer Variablen

Im Folgenden war die C -Sprache grundlegende Syntax für eine „statische Variable“ zu deklarieren.

Bei der Definition der statischen Variablen können wir auch ihren Anfangszustand festlegen. Im Folgenden finden Sie die Methode zur Initialisierung eines statischen variablen Wertes in der Programmiersprache C, C als c.

Überall, wo sein Umfang vorhanden ist, kann ein konstanter variabler Wert erneut initialisiert werden. Die Neuinitialisierung des Wertes einer statischen Variablen wird im folgenden Programm demonstriert. In diesem Programm fügen wir zunächst die Header -Datei "stdio" in die Erweiterung ein. ".H ”, mit dem die Eingabe und die Ausgabe angezeigt werden.

#enthalten
int main ()

statische int x = 20;
x ++;
printf ("Der Wert von x ist: %d \ n", x);
x = 0;
printf ("Nach der Reinitialisierung des Wertes x ist: %d \ n", x);

Dies ist ein grundlegendes und einfaches Beispiel für statische Variablen, bei denen wir mit dem statischen Schlüsselwort eine Variable "x" Datentyp "int" deklariert haben, was bedeutet. Wir haben den Wert "20" in die Variable "x" initialisiert, und dann wurde der inkrementelle Vorgang auf die Variable angewendet, um den Wert von "x" um 1 zu erhöhen. Und drucken Sie dann den Wert von "x" aus. Wie Sie sehen, haben wir in der Anweisung printf () „\ n“ verwendet, was bedeutet, eine Zeile zu brechen oder die Ausgabe in der neuen Zeile zu drucken. Danach haben wir den Wert in dieselbe Variable "x" neu initialisiert, die "0" ist. Dann drucken wir die Zeichenfolge, die in doppelten Anführungszeichen geschrieben wurde.

Hier ist die Ausgabe der obigen Abbildung, bei der der Wert von „x“ nach der Implementierung des Inkrementvorgangs „21“ ist, aber wir haben einen weiteren Wert des „X“, der „0“ ist, weil wir die Variable neu initialisiert haben "X" in derselben Funktion.

Hauptverbrauch für statische Variablen

In diesem Abschnitt werden wir die statischen Variablen und die globalen Variablen diskutieren. Jede deklarierte Variable, die außerhalb der Main () -Funktion verwendet wird, ist global. Eine statische Variable wurde „statisch“ deklariert, was darauf hinweist, dass sein Lebenszyklus oder seine Verlängerung die Dauer der gesamten Ausführung des Programms sind. Da sie nicht an eine bestimmte Funktion gebunden sind, kann jede zugängliche Methode zum Zugriff auf und verändert globale Variablen.

Verwenden des statischen Schlüsselworts in einem Funktionsaufruf: Wenn wir bei jedem Aufruf für eine Variable den gleichen Wert behalten möchten, können wir diese als statische Variable innerhalb der Funktion angeben. Wenn das statische Schlüsselwort innerhalb einer Methode verwendet wurde, wird die Neuinitialisierung eines Parameters bei aufeinanderfolgenden Funktionsaufrufen verhindert (zum Beispiel, wenn eine statische Variable in einer Methode erstellt und initialisiert wird). Betrachten Sie eine Funktion mit einer statischen Variablen, die als „X“ mit einem Anfangswert von 20 bezeichnet wird. Der Inkrementoperator wird von der Funktion verwendet, um den Wert von „x“ mit jedem Methodenaufruf zu erhöhen. Der Prozess wird unten beschrieben.

#enthalten
Hohlraumfunktion ()

statische int x = 20;
x ++;
printf ("%d \ n", x);

int main ()

Funktion();
Funktion();
Funktion();
Funktion();
Funktion();

Die Variable „X“ beginnt mit einem Wert von 20, wenn diese Methode zum ersten Mal verwendet wird, und erhöht sich danach auf einen Wert von 21. Die Methode druckt daher 21, 22, 23, 24 und 25 aus, da wir die Funktion in der Haupt- () -Funktion 5 -mal bezeichnet haben. Jetzt wird der variable "x" -Wert nicht auf 20 zurückgesetzt, wenn wir diese Methode wiederholt ausführen. Mit Inkrementierung sollte dies den Wert aus seiner vorhergehenden Spanne, dh 21, und 22 und so weiter gewinnen. Daher druckt die Methode diese Zeit und so weiter bis zum letzten Funktionsaufruf.

Dies ist die Ausgabe der obigen Abbildung:

Erklären Eine globale Variable unter Verwendung einer statischen Variablen: Dynamische Parameter können auch weltweit deklariert werden. Dies impliziert, dass ein einzelner Parameter die Vorteile sowohl einer konstanten als auch einer globalen Variablen hat. Eine statische und die Bereiche einer globalen Variablen unterscheiden sich voneinander. Ein konstanter Parameter hat nur eine Blockierungsspanne, während auf eine globale Variable aus jedem Punkt im Programm zugegriffen werden kann. Das Programm, das zeigt, wie es definiert ist.

#enthalten
statische int y = 10;
void function ()
statische int x = 20;
x ++;
printf ("Die statische Variable ist: %d", x);

int main ()
y ++;
printf ("Die globale Variable ist: %d \ n", y);
Funktion();

In diesem Beispiel haben wir über den Header-Dateinamen „StDIO.H, "wo".H ”ist die Erweiterung der Header -Datei. Anschließend deklarieren wir eine statische Variable außerhalb der Main () -Funktion, die das „Y“ der Datentyp -Ganzzahl ist. Der Wert "10" wird in die statische Variable "y" initialisiert. Dann haben wir eine Methode namens "function ()", die auch weltweit außerhalb der Main () -Funktion deklariert wird. Diese Funktion () verfügt über eine statische Variable "x" des Datentyps "int" mit dem Wert von "20", und dann haben wir den Inkrementoperation in die Variable "x" implementiert. Danach haben wir eine printf () -Anweisung, um die Zeichenfolge zu drucken, wie sie in der Funktion printf () geschrieben ist.

Wir müssen diese Funktion aufrufen, nachdem wir die Variable und Funktion global deklariert haben () (). Wir haben den Hauptabschnitt des C -Programms erreicht, um diese Methode aufzurufen. In der Funktion main () haben wir erneut eine Inkrementoperation implementiert, aber jetzt in der Variablen „Y“ und drucken Sie die Zeichenfolge der globalen Variablen aus. Dann haben wir die Funktion namens "function ()" genannt, die weltweit deklariert wurde.

Hier ist die Ausgabe der globalen Variablenabbildung. Erstens wird der Compiler die globale Variable „Y“ ausführen, da er im Programm zuerst deklariert wurde. Nach der Implementierung des Inkrementvorgangs wird die variable „y“ zu „11“, und dann wird die Funktion aufgerufen, dh „function ()“ und die statische Variable wird gedruckt.

Abschluss

Wir haben gelernt, wie man die statische Variable in derselben Funktion durch ein einfaches Beispiel neu initialisiert. Dann haben wir auch diskutiert, wie die Variable global deklariert werden und wie man die Funktion außerhalb des Main () Körpers schreibt und dann die Funktion durch verschiedene Beispiele zurückrufen kann. Ich hoffe, dass dieses Tutorial für Sie von Vorteil ist, wenn Sie über statische Variablen in der C -Programmiersprache erfahren.