sigset.c
来自「用于嵌入式Linux系统的标准C的库函数」· C语言 代码 · 共 62 行
C
62 行
#include <signal.h>#include <errno.h>#if defined(SIG_SETMASK) && NSIG <= 32 /* easier than trying to remove from Makefile */#undef sigemptysetintsigemptyset (sigset_t * set){ *set = (sigset_t) 0; return 0;}intsigfillset (sigset_t * set){ *set = ~((sigset_t) 0); return 0;}#undef sigaddsetintsigaddset (sigset_t * set, int signo){ if (signo >= NSIG || signo <= 0) { errno = EINVAL; return -1; } *set |= 1 << (signo - 1); return 0;}intsigdelset (sigset_t * set, int signo){ if (signo >= NSIG || signo <= 0) { errno = EINVAL; return -1; } *set &= ~(1 << (signo - 1)); return 0;}intsigismember (const sigset_t * set, int signo){ if (signo >= NSIG || signo <= 0) { errno = EINVAL; return -1; } if (*set & (1 << (signo - 1))) return 1; else return 0;}#endif /* SIG_SETMASK */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?