今天看了下signal标准接口,定义的很费解,如下
void (*signal(int sig_num,void (*handler)(int)))(int)
按说,这个接口可以拆分下
void (*fp)(int)
fp = signal(int sig_num,void (*handler)(int))
看到这里比较蒙,C中函数指针的定义本来就比较反人类,但是凡事都怕乍一看,丫不就是
typedef void (*fp)(int);
fp signal(int sig_num,void (*handler)(int));
即signal函数的返回值是一个函数指针,参数为一个int和一个函数指针。
网友评论