#include <iostream>
using namespace std;
typedef void (*PF) (int);
void Fun (int a)
{
cout << "Here is the function that the parameter is shaping fun (int)" << Endl;
}
void printf (int a)
{
cout << "Here is the function Printf (int)" << Endl;
void (*pfun (int, void (*qfun) (int))) (int)
{
//1. First of all, this is a function, the name of the function is Pfun, there are two parameters, one is plastic, and the other is the function pointer.
//2. Second, the return value of this function is a pointer to a function, the type is: void (*PF) (int).
PF q = qfun;
(*Q) (4);
The argument here is that the parameter is an integer and a function pointer.
PF p = fun;
return p;
}
int main ()
{
PF q = printf;//function pointer to function.
PF p = pfun (2, q);
(*p) (3);//Here is the test return value, which proves that the return value is a function pointer. return
0;
}