Пространства имён
Варианты
Действия

signal

Материал из cppreference.com
< c‎ | program

Определено в заголовочном файле <signal.h>
void (*signal( int sig, void (*handler) (int))) (int);
Устанавливает обработчик ошибок для сигнала sig. Обработчик сигнала может быть настроен так, что по умолчанию обработка будет происходить, сигнал игнорируется, или определяемая пользователем функция называется.
Оригинал:
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.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Когда обработчик сигнала установлен на функции и сигнала происходит, это реализация определена ли signal(sig, SIG_DFL) будет выполняться непосредственно перед началом обработчик сигнала. Кроме того, реализация может предотвратить некоторые реализации определенного набора AF сигналы от происходящих в то время как обработчик сигнала работает.
Оригинал:
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.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Если пользователь функция возвращает при обращении SIGFPE, SIGILL или SIGSEGV, поведение не определено. В большинстве реализаций программы завершается.
Оригинал:
If the user defined function returns when handling SIGFPE, SIGILL or SIGSEGV, the behavior is undefined. In most implementations the program terminates.
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
Если обработчик сигнала называют в результате abort или raise, поведение не определено, если любое из следующих требований не соблюдается
Оригинал:
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:
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
  • обработчик сигнала вызывает raise.
    Оригинал:
    the signal handler calls raise.
    Текст был переведён автоматически используя Переводчик Google.
    Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
  • обработчик сигнала относится к объекту статическим срок хранения которых не объявлен как volatile sig_atomic_t.
    Оригинал:
    the signal handler refers to an object of static storage duration which is not declared as volatile sig_atomic_t.
    Текст был переведён автоматически используя Переводчик Google.
    Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
  • обработчик сигнала вызывает любую функцию в стандартной библиотеке, за исключением abort, _Exit, или signal с первым аргументом не является номер сигнала, в настоящее время обрабатывается.
    Оригинал:
    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.
    Текст был переведён автоматически используя Переводчик Google.
    Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

Содержание

[править] Параметры

sig
сигнал, чтобы установить обработчик сигнала. Это может быть выполнение определенного значения или одно из следующих значений:
определяет типы сигналов
(макроконстанта) [править]
Оригинал:
the signal to set the signal handler to. It can be an implementation-defined value or one of the following values:
определяет типы сигналов
(макроконстанта) [править]
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
handler
обработчик сигнала. Это должна быть одна из следующих:
  • SIG_DFL макросов. Обработчик сигнала устанавливается по умолчанию обработчик сигнала.
  • SIG_IGN макросов. Сигнал игнорируется.
  • Указатель на функцию. Подпись функции должны быть эквивалентны следующим:
void fun(int sig);
Оригинал:
the signal handler. This must be one of the following:
  • SIG_DFL macro. The signal handler is set to default signal handler.
  • SIG_IGN macro. The signal is ignored.
  • pointer to a function. The signature of the function must be equivalent to the following:
void fun(int sig);
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Возвращаемое значение

Предыдущий обработчик сигнала на успех или неудача на SIG_ERR (установка обработчик сигнала может быть отключен на некоторых реализациях).
Оригинал:
Previous signal handler on success or SIG_ERR on failure (setting a signal handler can be disabled on some implementations).
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

[править] Пример

[править] См. также

запускает обработчик сигнала для определённого сигнала
(функция) [править]