int f(int); //函数声明 int (*pf) = &f; /*函数指针初始化 其中&符号时可选的,因为函数名被使用时总是由编译器转换为函数指针*/ //函数指针声明并初始化后, 可以用3中方法调用 int ans; ans = f(3); ans = pf(3); ans = (*pf)(3); //同样, 函数指针中的*符号是可选的, 因为即使使用了, *pf最终也会被编译器转换为 指针pf。编译器最终需要的是一个指针。