Funkcia raise () v C ++ vysiela signál do programu.
zvýšiť () prototyp
int raise (int sig);
Funkcia zdvihnutia volá obsluhu signálu. Pokiaľ nie je nastavená žiadna užívateľom definovaná funkcia pre manipuláciu so signálom, je definovaná implementácia, či bude signál ignorovaný alebo či bude vyvolaný predvolený obslužný program.
Je definované v hlavičkovom súbore.
zvýšiť () parametre
sig: Signál, ktorý sa má odoslať na spracovanie. Môže mať jednu z nasledujúcich hodnôt:
- SIGABRT
- SIGFPE
- SIGILL
- SIGINT
- SIGSEGV
- SIGTERM
raise () Návratová hodnota
Pri úspechu vráti nulu a pri zlyhaní nenulovú hodnotu.
Príklad: Ako funguje funkcia 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 spustení programu bude výstup:
Predtým, ako sa obsluha signálu volá Signal = 0 Po obsluhe signálu sa volá Signal = 6