C语言内外部函数
在 C 语言中,根据函数能否被其他源文件调用,将函数分为内部函数和外部函数。
- 内部函数:只能被本文件中其他函数所调用,在定义内部函数时,在函数名和函数类型的前面加 static ,即 static 类型名 函数名(形参表) ,所以内部函数又称静态函数。
以下是一个 C 语言内部函数的简单示例代码:
在这个示例中,定义了一个内部函数 add ,它只能在当前文件中被调用。在 main 函数中调用 add 函数并打印结果。
请注意,内部函数通常在其所在的源文件中进行声明和定义,而其他源文件无法直接访问内部函数。这有助于提高代码的模块化和封装性。
- 外部函数:可以供其他文件调用,在定义函数时,在函数的首部加上关键字 extern ,即 extern int fun(int a, int b) 。
C 语言外部函数是一种可在自身所处的源文件及其他源文件中都能被调用的函数,其作用域是整个源程序。在引用该外部函数的源程序文件中用关键字 extern 声明外部函数。在定义外部函数时,在函数首部前面加上关键字 extern ,缺省 extern 则默认为外部函数。
file1.c:
在这个例子中,源文件 file1.c 中的函数 max 是一个外部函数,可以在源文件 file2.c 中通过 extern 关键字声明并调用。