首页 > 文章列表 > 在C语言中,静态函数

在C语言中,静态函数

调用 作用 声明
223 2023-09-07

C 中的静态函数是作用域仅限于其目标文件的函数。这意味着静态函数仅在其目标文件中可见。通过在函数名称之前放置 static 关键字,可以将函数声明为静态函数。

演示这一点的示例如下 -

有两个文件 first_file.c 和第二个文件.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()是一个静态函数,它打印“Inside the static function staticFunc()”。 main() 函数调用 staticFunc()。该程序可以正常工作,因为静态函数仅从其自己的目标文件中调用。