# SIG_DFL, SIG_IGN

< c‎ | program

定义于头文件 `<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");   /* 决不抵达 */
    }

输出：

### 示例

    #include <signal.h>
    #include <stdio.h>

    int main(void)
    {
        /* 忽略信号 */
        signal(SIGTERM, SIG_IGN);
        raise(SIGTERM);
        printf("Exit main()\n");
    }

输出：

    Exit main()

### 引用

- C11 标准（ISO/IEC 9899:2011）：

  - 7.14/3 Signal handling <signal.h> (p: 265)

- C99 标准（ISO/IEC 9899:1999）：

  - 7.14/3 Signal handling <signal.h> (p: 246)

- C89/C90 标准（ISO/IEC 9899:1990）：

  - 4.7 SIGNAL HANDLING <signal.h>

### 参阅