函数指针是一种指向函数的变量,存储函数地址,可间接调用该函数。声明时需指定函数指针指向的函数类型和名称;初始化时使用函数地址赋值给函数指针;调用时使用解引用运算符和参数调用函数指针指向的函数。

C 语言中调用函数指针
什么是函数指针?
函数指针是一个指向函数的变量,它存储了一个函数的地址,可以用来间接调用该函数。
如何声明函数指针?
立即学习“C语言免费学习笔记(深入)”;
格式:
<code class="c">returnType (*functionPointerName)(parameterType1, parameterType2, ...);</code>
其中:
-
returnType是函数指针指向的函数的返回类型。 -
functionPointerName是函数指针的名称。 -
parameterType1、parameterType2等是函数指针指向的函数的参数类型。
如何初始化函数指针?
使用函数地址:
<code class="c">functionPointerName = &functionName;</code>
其中:
-
functionPointerName是函数指针。 -
functionName是要赋给函数指针的函数的名称。
如何调用函数指针?
使用解引用运算符 *:
<code class="c">(*functionPointerName)(arguments);</code>
其中:
-
functionPointerName是函数指针。 -
arguments是要传递给函数指针指向的函数的参数。
示例
以下示例展示了如何声明、初始化和调用函数指针:
<code class="c">// 声明一个指向返回 int 的函数,参数为两个 int
int (*sumFunction)(int, int);
// 初始化 sumFunction 指针以指向 sum 函数
sumFunction = ∑
// 调用 sumFunction 指针,传递两个 int 参数
int result = (*sumFunction)(10, 20);
// sum 函数的定义
int sum(int a, int b) {
return a + b;
}</code>在该示例中,sumFunction 指针指向 sum 函数,通过解引用 sumFunction 指针并传递适当的参数,可以调用 sum 函数。











