``` 编写一个函数指针,分别指向int add(int ,int ),int sub(int,int),在主函数中调用。```编写一个函数指针,分别指向int add(int ,int ),int sub(int,int),在主函数中调用。
时间: 2024-12-06 19:26:49 浏览: 29
在C语言中,你可以创建一个函数指针,用于存储`add`和`sub`这两个函数的地址。首先,你需要定义两个函数`int add(int a, int b)`和`int sub(int a, int b)`,然后定义一个函数指针类型,比如`typedef int (*Operator)(int, int)`,这个类型代表接受两个整数并返回整数的函数。
接下来,你可以声明并初始化这两个函数指针,将`add`和`sub`的地址赋值给它们:
```c
#include <stdio.h>
// 定义两个基础函数
int add(int a, int b) {
return a + b;
}
int sub(int a, int b) {
return a - b;
}
// 定义函数指针类型
typedef int (*Operator)(int, int);
// 声明和初始化函数指针
Operator addOp = &add; // 指向 add 函数
Operator subOp = ⊂ // 指向 sub 函数
// 主函数中调用函数指针
int main() {
int result1 = (*addOp)(5, 3); // 调用加法
int result2 = (*subOp)(10, 7); // 调用减法
printf("Addition result: %d\n", result1);
printf("Subtraction result: %d\n", result2);
return 0;
}
```
在这个例子中,`(*addOp)(5, 3)`会调用`add`函数,而`(*subOp)(10, 7)`则会调用`sub`函数。
阅读全文
相关推荐



















