C Standard Library 简明教程
C Library - <signal.h>
signal.h 头定义了一个变量类型 sig_atomic_t ,两个函数调用和许多宏,以处理程序执行期间报告的不同信号。
The signal.h header defines a variable type sig_atomic_t, two function calls, and several macros to handle different signals reported during a program’s execution.
Library Variables
以下是头 signal.h 中定义的变量类型 −
Following is the variable type defined in the header signal.h −
Sr.No. |
Variable & Description |
1 |
sig_atomic_t This is of int type and is used as a variable in a signal handler. This is an integral type of an object that can be accessed as an atomic entity, even in the presence of asynchronous signals. |
Library Macros
以下是头 signal.h 中定义的宏,这些宏将用于下面列出的两个函数。 SIG_ 宏与信号函数一起使用,以定义信号函数。
Following are the macros defined in the header signal.h and these macros will be used in two functions listed below. The SIG_ macros are used with the signal function to define signal functions.
Sr.No. |
Macro & Description |
1 |
SIG_DFL Default signal handler. |
2 |
SIG_ERR Represents a signal error. |
3 |
SIG_IGN Signal ignore. |
SIG 宏用于在以下条件中表示信号数 −
The SIG macros are used to represent a signal number in the following conditions −
Sr.No. |
Macro & Description |
1 |
SIGABRT Abnormal program termination. |
2 |
SIGFPE Floating-point error like division by zero. |
3 |
SIGILL Illegal operation. |
4 |
SIGINT Interrupt signal such as ctrl-C. |
5 |
SIGSEGV Invalid access to storage like segment violation. |
6 |
SIGTERM Termination request. |
Library Functions
以下是在头文件中定义的功能 signal.h −
Following are the functions defined in the header signal.h −
Sr.No. |
Function & Description |
1 |
void (*signal(int sig, void (*func)(int)))(int)This function sets a function to handle signal i.e. a signal handler. |
2 |
int raise(int sig)This function causes signal sig to be generated. The sig argument is compatible with the SIG macros. |