Funktionen höja () i C ++ skickar signal till programmet.
höja () Prototyp
int höja (int sig);
Höjningsfunktionen anropar signalhanteraren. Om ingen användardefinierad funktion är inställd för signalhantering, är det implementeringsdefinierad om signalen kommer att ignoreras eller standardhanteraren kommer att anropas.
Det definieras i rubrikfil "> rubrikfil.
höja () parametrar
sig: Signalen som ska skickas för hantering. Det kan ta ett av följande värden:
- SIGABRT
- SIGFPE
- SIGILL
- SIGINT
- SIGSEGV
- SIGTERM
höja () Returvärde
Vid framgång returnerar den noll och vid misslyckande returneras en icke-noll.
Exempel: Hur höjning () fungerar
#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; )
När du kör programmet blir resultatet:
Innan signalhanteraren kallas Signal = 0 Efter signalhanteraren kallas Signal = 6