当前位置: 技术问答>linux和unix
Unix环境高级编程10.3的一个例子不太懂
来源: 互联网 发布时间:2017-01-18
本文导语: signal函数的为 void (*signal(int signo, void (*func)(int))(int); 这里返回一个函数指针,该指针所指向的函数是一个int 作为参数,无返回值的函数。 后面又有typedef void Sigfunc(int);这个如何理解呢? 又有Sigfunc *signal(int, ...
signal函数的为
这里返回一个函数指针,该指针所指向的函数是一个int 作为参数,无返回值的函数。
后面又有typedef void Sigfunc(int);这个如何理解呢?
又有
void (*signal(int signo, void (*func)(int))(int);
这里返回一个函数指针,该指针所指向的函数是一个int 作为参数,无返回值的函数。
后面又有typedef void Sigfunc(int);这个如何理解呢?
又有
Sigfunc *signal(int, Sigfunc *);
|
typedef void (*Sigfunc)(int);
Sigfunc是一个函数指针类型
typedef void Sigfunc(int);
Sigfunc是一个函数类型,少了*而已
Sigfunc是一个函数指针类型
typedef void Sigfunc(int);
Sigfunc是一个函数类型,少了*而已
typedef void Sigfunc(int);
Sigfunc *signal(int, Sigfunc *);
//和下面是等价的
typedef void (*Sigfunc)(int);
Sigfunc signal(int, Sigfunc *);
|
void (*signal(int signo, void (*func)(int))(int);
//和下面是等价的
typedef void Sigfunc(int);
Sigfunc *signal(int, Sigfunc *);
最后都返回了一个函数指针void(*)(int)
//和下面是等价的
typedef void Sigfunc(int);
Sigfunc *signal(int, Sigfunc *);
最后都返回了一个函数指针void(*)(int)