Namespaces
Variants

SIG_DFL, SIG_IGN

From cppreference.net
定义于头文件 <signal.h>
#define SIG_DFL /*implementation defined*/
#define SIG_IGN /*implementation defined*/

SIG_DFL SIG_IGN 宏展开为不等于任何函数地址的整型表达式。这些宏为 signal ( ) 函数定义了信号处理策略。

常量 说明
SIG_DFL 默认信号处理
SIG_IGN 忽略信号

目录

示例

#include <signal.h>
#include <stdio.h>
int main(void)
{
    /* 使用默认信号处理器 */
    raise(SIGTERM);
    printf("Exit main()\n");   /* 永远不会执行到此处 */
}

输出:

(none)

示例

#include <signal.h>
#include <stdio.h>
int main(void)
{
    /* 忽略信号 */
    signal(SIGTERM, SIG_IGN);
    raise(SIGTERM);
    printf("Exit main()\n");
}

输出:

Exit main()

参考文献

  • C17 标准 (ISO/IEC 9899:2018):
  • 7.14/3 信号处理 <signal.h> (页: 193)
  • C11 标准 (ISO/IEC 9899:2011):
  • 7.14/3 信号处理 <signal.h> (页: 265)
  • C99标准(ISO/IEC 9899:1999):
  • 7.14/3 信号处理 <signal.h>(页码:246)
  • C89/C90 标准 (ISO/IEC 9899:1990):
  • 4.7 信号处理 <signal.h>

参见

C++ 文档 关于 SIG_DFL , SIG_IGN