C语言中的函数指针可以用于存储和调用函数。函数指针的定义方式如下:
返回类型 (*指针变量名)(参数列表)
例如,假设有一个函数 int add(int a, int b)
,可以定义一个函数指针来指向该函数:
int (*ptr)(int, int);
接下来,可以将函数的地址赋值给函数指针变量:
ptr = &add;
或者可以直接使用函数名来赋值给函数指针变量,因为函数名本身就是函数的地址:
ptr = add;
然后,可以通过函数指针来调用函数:
int result = (*ptr)(a, b);
或者可以简化为:
int result = ptr(a, b);
完整的例子:
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int main() {
int a = 3, b = 4;
int (*ptr)(int, int);
ptr = add;
int result = ptr(a, b);
printf("Result: %d\n", result);
return 0;
}
输出结果为:
Result: 7