Funkcja raise () w C ++ wysyła sygnał do programu.
raise () Prototype
int podbić (int sig);
Funkcja podnoszenia wywołuje procedurę obsługi sygnału. Jeśli żadna funkcja zdefiniowana przez użytkownika nie jest ustawiona do obsługi sygnału, w implementacji określa się, czy sygnał zostanie zignorowany, czy zostanie wywołany domyślny program obsługi.
Jest zdefiniowany w pliku nagłówkowym "> plik nagłówkowy.
raise () Parametry
sig: Sygnał, który ma być wysłany do obsługi. Może przyjąć jedną z następujących wartości:
- SIGABRT
- SIGFPE
- SIGILL
- SIGINT
- SIGSEGV
- SIGTERM
raise () Zwracana wartość
Po pomyślnym zakończeniu zwraca zero, aw przypadku niepowodzenia zwracane jest niezerowe.
Przykład: Jak działa funkcja 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; )
Po uruchomieniu programu wynik będzie następujący:
Przed wywołaniem programu obsługi sygnału Signal = 0 Program obsługi sygnału został nazwany Signal = 6