定义一个C语言的函数指针数组
时间: 2023-03-03 22:18:36 浏览: 126
在C语言中,可以定义一个函数指针数组,用于存储一组函数指针,每个函数指针指向一个特定的函数。下面是一个示例:
```c
#include <stdio.h>
int add(int a, int b) {
return a + b;
}
int subtract(int a, int b) {
return a - b;
}
int multiply(int a, int b) {
return a * b;
}
int main() {
// 定义函数指针数组,存储指向三个不同函数的指针
int (*math_functions[3])(int, int) = {add, subtract, multiply};
int a = 10, b = 5;
// 使用函数指针调用相应的函数
printf("%d\n", math_functions[0](a, b)); // 输出 15
printf("%d\n", math_functions[1](a, b)); // 输出 5
printf("%d\n", math_functions[2](a, b)); // 输出 50
return 0;
}
```
在上面的例子中,我们定义了一个包含三个元素的函数指针数组 `math_functions`,每个元素都是一个指向函数的指针,分别指向 `add`、`subtract` 和 `multiply` 函数。然后我们使用函数指针数组来调用相应的函数,并传入两个整数参数。最后程序输出每个函数返回的结果。
相关推荐
![application/msword](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)