typedef int(*P)(int ) typedef 主要的作用是给变量取别名,但是存在一些比较特殊的用法。可用于通过给函数起别名的方式定义回调函数。 typedef int(*P)(int ) 这里相当于是给函数指针 P 起了个别名。那么可以用 P 来定义或转换其他指针的类型。 存在一个这样的函数: int add(int x) { return x+1; } P f=add; //用P类型 定义一个f, f就可以接收此种函数形式的函数名,f(5); //然后可以用f调用这个add()函数。