#include <stdio.h>
// 1. 不用typedef：函数指针定义繁琐
int add(int a,int b) {return a+b;}
int sub(int a,int b) {return a-b;}
int main() {
    // 不用typedef：int (*f1)(int,int);
    int (*f1)(int,int) = add; 
    printf("3+5=%d\n", f1(3,5));
    
    // 用typedef：简化定义
    typedef int (*FuncPtr)(int,int); 
    FuncPtr f2 = sub; 
    printf("8-2=%d\n", f2(8,2));
    return 0;
}