代码
#include <stdio.h>
#include <signal.h>
#include <unistd.h>
typedef void(*sighandler_t)(int);
void fun1(int sig)
{
while(1)
{
sleep(1);
printf("sig = %d\n",sig);
}
return ;
}
void fun2(int sig)
{
while(1)
{
sleep(1);
printf("sig2 = %d\n",sig);
}
return ;
}
int main(int argc, const char *argv[])
{
printf("%p %p\n",fun1,fun2);
sighandler_t s = signal(20,fun1);
printf("%p\n",s);
s = signal(20,fun2);
printf("%p\n",s);
while(1)
{
printf("*****\n");
sleep(1);
}
return 0;
}
执行结果