昨天加群遇到一个问题,问题是这样的
void (*b(void *))(int *a)
一开始对于这样的一个生命直接一脸懵逼,后来分析下这是一个函数
先看分析
b(void *)
这是一个标准的函数写法,参数是void*类型
*b(void *)
说明这个函数的返回值是一个指针
(*b(void *))(int *a)
说明这个函数返回的指针也是一个函数
void (*b(void *))(int *a)
这个函数返回的指针指向一个无返回参数为int*类型的函数
写到这里已经明白了上面的声明是一个函数的声明,这是一个返回函数指针的函数
写开就是 void ()(int *a) b(void );