setops.c

来自「APUE(第二版)的随书源代码,与第一版的代码相比增加了一些章节的代码(详见第二」· C语言 代码 · 共 32 行

C
32
字号
#include	<signal.h>#include	<errno.h>#define	SIGBAD(signo)	((signo) <= 0 || (signo) >= NSIG)	/* <signal.h> usually defines NSIG to include signal number 0 */intsigaddset(sigset_t *set, int signo){	if (SIGBAD(signo)) { errno = EINVAL; return(-1); }	*set |= 1 << (signo - 1);		/* turn bit on */	return(0);}intsigdelset(sigset_t *set, int signo){	if (SIGBAD(signo)) { errno = EINVAL; return(-1); }	*set &= ~(1 << (signo - 1));	/* turn bit off */	return(0);}intsigismember(const sigset_t *set, int signo){	if (SIGBAD(signo)) { errno = EINVAL; return(-1); }	return( (*set & (1 << (signo - 1))) != 0 );}

⌨️ 快捷键说明

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