Die Funktion raise () in C ++ sendet ein Signal an das Programm.
erhöhen () Prototyp
int erhöhen (int sig);
Die Raise-Funktion ruft den Signalhandler auf. Wenn für die Signalverarbeitung keine benutzerdefinierte Funktion festgelegt ist, wird durch die Implementierung definiert, ob das Signal ignoriert oder der Standardhandler aufgerufen wird.
Es ist in der Header-Datei "> Header-Datei definiert.
erhöhen () Parameter
sig: Das zur Bearbeitung zu sendende Signal. Es kann einen der folgenden Werte annehmen:
- SIGABRT
- SIGFPE
- SIGILL
- ZEICHEN
- SIGSEGV
- SIGTERM
erhöhen () Rückgabewert
Bei Erfolg wird Null zurückgegeben, und bei Fehler wird ein Wert ungleich Null zurückgegeben.
Beispiel: Funktionsweise der Funktion 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; )
Wenn Sie das Programm ausführen, lautet die Ausgabe wie folgt:
Vor dem Signalhandler heißt Signal = 0 Nach dem Signalhandler heißt Signal = 6