C语言内外部函数

简介: C语言内外部函数

C语言内外部函数

在 C 语言中,根据函数能否被其他源文件调用,将函数分为内部函数和外部函数。

 

- 内部函数:只能被本文件中其他函数所调用,在定义内部函数时,在函数名和函数类型的前面加 static ,即 static 类型名 函数名(形参表) ,所以内部函数又称静态函数。

以下是一个 C 语言内部函数的简单示例代码:

image.png

在这个示例中,定义了一个内部函数 add ,它只能在当前文件中被调用。在 main 函数中调用 add 函数并打印结果。

 

请注意,内部函数通常在其所在的源文件中进行声明和定义,而其他源文件无法直接访问内部函数。这有助于提高代码的模块化和封装性。

- 外部函数:可以供其他文件调用,在定义函数时,在函数的首部加上关键字 extern ,即 extern int fun(int a, int b) 。

C 语言外部函数是一种可在自身所处的源文件及其他源文件中都能被调用的函数,其作用域是整个源程序。在引用该外部函数的源程序文件中用关键字 extern 声明外部函数。在定义外部函数时,在函数首部前面加上关键字 extern ,缺省 extern 则默认为外部函数。

file1.c:

image.png

在这个例子中,源文件 file1.c 中的函数 max 是一个外部函数,可以在源文件 file2.c 中通过 extern 关键字声明并调用。

目录
相关文章
|
5天前
|
程序员 C语言
C语言中的内部函数与外部函数
C语言中的内部函数与外部函数
C4.
|
20天前
|
C语言
C语言的内部函数与外部函数
C语言的内部函数与外部函数
C4.
28 0
|
程序员 C语言
程序员之路:C语言内部函数与外部函数
程序员之路:C语言内部函数与外部函数
240 0
|
程序员 C语言
程序员之路:C语言内部函数与外部函数
程序员之路:C语言内部函数与外部函数
|
5天前
|
存储 C语言
向函数传递结构体: C语言中的结构体参数传递详解
向函数传递结构体: C语言中的结构体参数传递详解
19 0
|
5天前
|
C语言
C语言中返回指针值的函数
C语言中返回指针值的函数
15 0
|
1天前
|
C语言 存储 编译器
C语言函数大全--a开头的函数
【6月更文挑战第1天】本篇介绍 C语言中 a开头的函数【C语言函数大全】
13 2
C语言函数大全--a开头的函数
|
2天前
|
C语言
malloc()函数
`malloc()`是C语言中的动态内存分配函数,用于分配指定大小的内存块,并返回一个`void*`类型的指针。要包含`stdlib.h`头文件来使用它。分配的内存大小以字节为单位,成功则返回内存首地址,失败则返回`NULL`。需要注意的是,返回的指针需强制转换为所需类型,并在使用后用`free()`释放内存,避免内存泄漏。切勿在分配区域内移动指针,以防止释放时出现问题。
|
3天前
|
Serverless C语言
C语言函数详解与实战应用
C语言函数详解与实战应用
9 1
|
4天前
|
算法 C语言
C语言函数递归调用详解与实战应用
C语言函数递归调用详解与实战应用
11 0