#C の静的関数は、スコープがオブジェクト ファイルに制限されている関数です。これは、静的関数はオブジェクト ファイル内でのみ表示されることを意味します。関数名の前に static キーワードを置くことで、関数を静的として宣言できます。
これを示す例は次のとおりです -
2 つのファイル first_file.c と Second file.c があります。これらのファイルの内容は次のとおりです -
first_file.c の内容
static void staticFunc(void) { printf("Inside the static function staticFunc() "); }
Second_file.c の内容
int main() { staticFunc(); return 0; }
さて、上記のコードをコンパイルすると、次のようになります。エラー、つまり「staticFunc() への未定義の参照」。これは、関数 staticFunc() が静的関数であり、そのオブジェクト ファイル内でのみ表示されるために発生します。
C の静的関数を示すプログラムは次のとおりです。
#include <stdio.h> static void staticFunc(void){ printf("Inside the static function staticFunc() "); } int main() { staticFunc(); return 0; }
上記のプログラムの出力は次のとおりです。
Inside the static function staticFunc()
上記のプログラムでは、関数 staticFunc() は静的関数であり、「静的関数 staticFunc() の内部」と出力されます。 main() 関数は staticFunc() を呼び出します。静的関数は独自のオブジェクト ファイルからのみ呼び出されるため、プログラムは正常に動作します。
以上がC言語では静的関数の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。