raise (C++)

Aus Appmethod Topics
Wechseln zu: Navigation, Suche

Nach oben zu signal.h - Index


Header-Datei

signal.h

Kategorie

Prozesssteuerungsroutinen

Prototyp

int raise(int sig);

Beschreibung

Sendet ein Software-Signal an das ausführende Programm.

raise sendet ein Signal vom Typ sig an das Programm. Hat das Programm eine Signalbehandlungsroutine für den durch sig angegebenen Signaltyp installiert, wird diese Routine ausgeführt. Wurde keine solche Routine installiert, wird die für diesen Signaltyp definierte Aktion ausgeführt.

Folgende Signaltypen sind aktuell in signal.h definiert:

SIGABRT

Programmabbruch

SIGFPE

Ungültige Gleitkommaoperation

SIGILL

Ungültige Anweisung

SIGINT

Ctrl-C-Interrupt

SIGSEGV

Ungültiger Speicherzugriff

SIGTERM

Aufforderung zur Programmbeendigung

SIGUSR1

Benutzerdefiniertes Signal

SIGUSR2

Benutzerdefiniertes Signal

SIGUSR3

Benutzerdefiniertes Signal

SIGBREAK

Ctrl-Break-Interrupt.


Anmerkung: SIGABRT wird von Appmethod C++ während des normalen Betriebs nicht generiert. Es kann jedoch von abort, raise oder nicht behandelten Exceptions erzeugt werden.

Rückgabewert

Bei erfolgreicher Ausführung gibt raise 0 zurück.

Bei einem Fehler wird ein Wert ungleich Null zurückgegeben.

Beispiel

#include <signal.h>
int main(void)
{
    int a, b;
    a = 10;
    b = 0;
    if (b == 0)
    /* Einer Division durch Null vorbeugen */
       raise(SIGFPE);
    a = a / b;
    return 0;
}
 

Portabilität

POSIX Win32 ANSI C ANSI C++

+

+

+

+