我在读一本书(UNIX环境中的高级编程),我将介绍有关信号的部分.
使用信号功能时:
void (*signal(int signo,void (*func)(int)))(int);
参数func可以是指向用户定义的函数的指针,也可以是SIG_ERR,SIG_DFL或SIG_IGN.
我的问题不在UNIX的一部分,但我想给予背景.我真正想知道的是,这本书指出,这些常数是defiend as:
#define SIG_ERR (void (*)())-1
等于0和1.
现在,我有一些体面的猜测,但是为了节省时间 – 有人可以告诉我这是做什么,为什么它的工作?
还有,有…呃…更清洁?写这个假设我正在使用C并与这个C API交互的方法?