Функция raise () в C ++ отправляет сигнал программе.
Raise () Прототип
интервал повышения (интервал сигн);
Функция повышения вызывает обработчик сигнала. Если для обработки сигнала не задана пользовательская функция, то реализация определяется, будет ли сигнал игнорироваться или будет вызван обработчик по умолчанию.
Он определен в заголовочном файле "> заголовочный файл.
Raise () Параметры
sig: сигнал, отправляемый на обработку. Может принимать одно из следующих значений:
- SIGABRT
- SIGFPE
- СИГИЛЛ
- SIGINT
- SIGSEGV
- SIGTERM
Raise () Возвращаемое значение
В случае успеха возвращается ноль, а в случае неудачи - ненулевое значение.
Пример: как работает функция raise ()
#include #include using namespace std; sig_atomic_t sig_value = 0; void handler(int sig) ( sig_value = sig; ) int main() ( signal(SIGABRT, handler); cout << "Before signal handler is called" << endl; cout << "Signal = " << sig_value << endl; raise(SIGABRT); cout << "After signal handler is called" << endl; cout << "Signal = " << sig_value << endl; return 0; )
Когда вы запустите программу, вывод будет:
Перед вызовом обработчика сигнала Signal = 0 После вызова обработчика сигнала Signal = 6