Heim >Backend-Entwicklung >C++ >In der C-Sprache statische Funktionen

In der C-Sprache statische Funktionen

王林
王林nach vorne
2023-09-17 10:57:031073Durchsuche

In der C-Sprache statische Funktionen

Eine statische Funktion in C ist eine Funktion, deren Gültigkeitsbereich auf ihre Zieldatei beschränkt ist. Dies bedeutet, dass statische Funktionen nur in ihren Objektdateien sichtbar sind. Eine Funktion kann als statisch deklariert werden, indem das Schlüsselwort static vor ihrem Namen steht.

Ein Beispiel, das dies demonstriert, ist wie folgt:

Es gibt zwei Dateien: erste_Datei.c und zweite Datei.c. Der Inhalt dieser Dateien ist wie folgt:

Inhalt von first_file.c

static void staticFunc(void)
{
   printf("Inside the static function staticFunc() ");
}

Inhalt von second_file.c

int main()
{
   staticFunc();
   return 0;
}

Wenn ich nun den obigen Code kompiliere, erhalte ich eine Fehlermeldung, d. h. „undefinierter Verweis auf staticFunc()“. Dies liegt daran, dass die Funktion staticFunc() eine statische Funktion ist und nur in ihrer Objektdatei sichtbar ist.

Das Programm, das die statische Funktion in C demonstriert, ist wie folgt –

Beispiel

#include <stdio.h>

static void staticFunc(void){
   printf("Inside the static function staticFunc() ");
}

int main()
{
   staticFunc();
   return 0;
}

Ausgabe

Die Ausgabe des obigen Programms ist wie folgt –

Inside the static function staticFunc()

Im obigen Programm ist die Funktion staticFunc() eine statische Funktion und es wird „Innerhalb der statischen Funktion staticFunc()“ ausgegeben. Die Funktion main() ruft staticFunc() auf. Das Programm funktioniert einwandfrei, da die statischen Funktionen nur aus ihren eigenen Objektdateien aufgerufen werden.

Das obige ist der detaillierte Inhalt vonIn der C-Sprache statische Funktionen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:tutorialspoint.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen