头文件

<csignal> (signal.h)

用于处理信号的 C 库
一些运行环境使用信号来通知正在运行的进程某些事件的发生。这些事件可能与程序代码执行的错误有关,例如错误的算术运算,或与异常情况有关,例如中断程序的请求。

信号通常表示程序已被请求终止或发生了不可恢复的错误,因此处理信号允许执行终止前的清理操作或尝试以某种方式从错误中恢复。

并非所有运行环境都需要在标准 C 库为其设计的情况下自动生成信号,而其他一些环境不仅生成这些信号,还会生成更多特定的信号。但无论如何,所有通过调用 raise 函数显式生成的信号都会被传递到其对应的信号处理程序。

函数


类型


宏常量

类型signal
int (信号)SIGABRT(Signal Abort) 异常终止,例如由 abort 函数发起的终止。
SIGFPE(Signal Floating-Point Exception) 错误的算术运算,例如除以零或导致溢出的运算(不一定与浮点运算有关)。
SIGILL(Signal Illegal Instruction) 无效的函数映像,例如非法指令。这通常是由于代码损坏或尝试执行数据所致。
SIGINT(Signal Interrupt) 交互式注意信号。通常由应用程序用户生成。
SIGSEGV(Signal Segmentation Violation) 对存储的无效访问:当程序试图在其已分配的内存之外进行读取或写入时。
SIGTERM(Signal Terminate) 发送给程序的终止请求。
函数 (处理程序)SIG_DFL默认处理:信号由该特定信号的默认操作处理。
SIG_IGN忽略信号:该信号被忽略。
SIG_ERR表示失败的特殊返回值。

有关更多信息,请参阅 signal 函数。