遇到一超恐怖的声明,看大家能不能读懂
今早起来看书,遇到一个超超级吓人的声明,如下:void (*signal(int sig,void(*func)(int)))(int);
吓我一跳啊,当然书上就有答案,看看兄弟们谁能看懂这个声明,当然几位大牛就算了,肯定是小意思的
我只能分析到这里了,继续关注 //void (*signal(int sig,void(*func)(int)))(int); typedef void (*PFUN1)(int); typedef void (*PFUN2)(int sig, void(*func)(int)); void Test1(int n) { printf("Test1 n = %d\r\n", n); } void Test2(int n, void Test1(int n)) { printf("Test2 n = %d\r\n", n); } int main(int argc, char* argv[]) { PFUN1 pFun1 = Test1; PFUN1(1); PFUN2 pFun2 = Test2; pFun2(2, pFun1); return 0; }