signal
Defined in header
<signal.h>
|
||
void (*signal( int sig, void (*handler) (int))) (int);
|
||
Sets the error handler for signal sig
. The signal handler can be set so that default handling will occur, signal is ignored, or an user-defined function is called.
When signal handler is set to a function and a signal occurs, it is implementation defined whether signal(sig, SIG_DFL) will be executed immediately before the start of signal handler. Also, the implementation can prevent some implementation-defined set af signals from occurring while the signal handler runs.
If the user defined function returns when handling SIGFPE
, SIGILL
or SIGSEGV
, the behavior is undefined. In most implementations the program terminates.
If the signal handler is called as a result of abort or raise, the behavior is undefined if any of the following requirements is not followed:
- the signal handler calls raise.
- the signal handler refers to an object of static storage duration which is not declared as volatile sig_atomic_t.
- the signal handler calls any function within the standard library, except abort, _Exit, or signal with the first argument not being the number of the signal currently handled.
Contents |
[edit] Parameters
sig | - | the signal to set the signal handler to. It can be an implementation-defined value or one of the following values:
|
|||||||||
handler | - | the signal handler. This must be one of the following:
|
[edit] Return value
Previous signal handler on success or SIG_ERR
on failure (setting a signal handler can be disabled on some implementations).
[edit] Example
This section is incomplete Reason: no example |
[edit] See also
runs the signal handler for particular signal (function) |
|