什么是函数指针?如何使用函数指针?
时间: 2024-02-27 13:49:51 浏览: 98
函数指针的使用
5星 · 资源好评率100%
函数指针是指向函数的指针变量。它可以用来调用函数或作为函数的参数。在C语言中,每个函数都有一个入口地址,函数指针就是指向这个地址的指针变量。通过函数指针,我们可以动态地选择要调用的函数。
使用函数指针的步骤如下:
1. 定义函数指针变量:使用函数指针类型来声明一个指针变量,该指针变量可以指向特定类型的函数。
2. 将函数地址赋给函数指针:将函数的地址赋给函数指针变量,可以使用函数名来获取函数的地址。
3. 通过函数指针调用函数:使用函数指针变量来调用函数,可以像调用普通函数一样使用函数指针来执行函数。
下面是一个示例代码,演示了如何定义和使用函数指针:
```c
#include <stdio.h>
// 声明一个函数指针类型
typedef int (*FuncPtr)(int, int);
// 定义两个函数
int add(int a, int b) {
return a + b;
}
int sub(int a, int b) {
return a - b;
}
int main() {
// 声明一个函数指针变量
FuncPtr fun;
// 将函数地址赋给函数指针
fun = add;
// 通过函数指针调用函数
int result = fun(2, 1);
printf("Result: %d\n", result); // 输出:3
// 将函数地址赋给函数指针
fun = sub;
// 通过函数指针调用函数
result = fun(2, 1);
printf("Result: %d\n", result); // 输出:1
return 0;
}
```
阅读全文