void (*signal(int sig, void (*func) (int))) (int)理解

时间:2022-03-29 17:06:26

http://blog.csdn.net/sever2012/article/details/8281271

1.signal( int sig, void (*func)(int))
signal是一个函数,有2个参数,第一个是int类型,第二个参数是一个函数指针

2.void (*signal(int sig, void (*func) (int))) (int)

signal仍然是一个函数,他返回一个函数指针,这个指针指向的函数没有返回值,只有一个int类型的参数

3.简化:
typedef void Sigfunc(int)
Sigfunc就代表的就是一个 返回值是一个无返回值,有一个int参数的函数。

最后就成了这样
Sigfunc *signal(int, Sigfunc*)