- #include <stdio.h>
- // 定义一个结构体
- struct Calculator {
- // 函数指针成员
- int (*add)(int, int);
- int (*subtract)(int, int);
- };
- // 加法函数
- int add(int a, int b) {
- return a + b;
- }
- // 减法函数
- int subtract(int a, int b) {
- return a - b;
- }
- int main() {
- // 创建一个 Calculator 结构体实例
- struct Calculator calc;
- // 将函数指针指向相应的函数
- calc.add = add;
- calc.subtract = subtract;
- // 使用结构体中的函数指针调用函数
- int result_add = calc.add(10, 5);
- int result_subtract = calc.subtract(10, 5);
- printf("Addition result: %d\n", result_add); // 输出:Addition result: 15
- printf("Subtraction result: %d\n", result_subtract);// 输出:Subtraction result: 5
- return 0;
- }
|