bsdsignal.c

来自「tftp-hpa 一个功能完备开源tftp 客户端,可移植到Linux 和各个U」· C语言 代码 · 共 33 行

C
33
字号
/* * bsdsignal.c * * Use sigaction() to simulate BSD signal() */#include <signal.h>#include <stdlib.h>#include <string.h>void (*bsd_signal(int, void (*)(int)))(int);void (*bsd_signal(int signum, void (*handler)(int)))(int){  struct sigaction action, oldaction;  memset(&action, 0, sizeof action);  action.sa_handler = handler;  sigemptyset(&action.sa_mask);  sigaddset(&action.sa_mask, signum);  action.sa_flags = SA_RESTART;    if (sigaction(signum, &action, &oldaction) == -1) {#ifdef SIG_ERR    return SIG_ERR;#else    return NULL;#endif  }  return oldaction.sa_handler;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?