1.signal函数
原型:sighandler_t signal(int signum, sighandler_t handler);
作用:注册一个信号捕捉函数
2.代码:signal2.c
#include <stdio.h>
#include <signal.h>
#include <stdlib.h>
#include <errno.h>
typedef (*sighandler_t) (int);
void catchsigint(int signo)
{
printf("--------------catch\n");
}
int main()
{
sighandler_t handler;
handler = signal(SIGINT,catchsigint);
if(handler == SIG_ERR){
perror("signal error");
exit(1);
}
//while(1);
printf("-------------------------------\n");
return 0;
}
//测试:执行程序后,ctrl + c
//作用:当用户按下ctrl + c 时,用户终端向正在运行中的由该终端启动的程序发出此信号,默认动作为终止进程
结果: