SETJMP(3)

BEZEICHNUNG
setjmp - sichere Stack-Zusammenhang für nichtlokale Verzweigung

ÜBERSICHT
#include <setjmp.h>

int setjmp(jmp_buf env);

BESCHREIBUNG
setjmp und longjmp(3) sind nützlich für die Behandlung von Fehlern und Unterbrechungen, die in einem low-level-Unterprogramm eines Programms auftreten. setjmp() sichert den Stack-Zusammenhang bzw. die Stack-Umgebung in env für spätere Benutzung durch longjmp(). Der Stack-Zusammenhang wird ungültig wenn die Funktion, die setjmp() aufgerufen hat, beendet wird.

RÜCKGABEWERT
Es wird 0 zurückgegeben, wenn sofort zurückgekehrt wird, und Nichtnull, wenn von longjmp() mit gesichertem Zusammenhang zurückgekehrt wird.

KONFORM ZU
POSIX

BEMERKUNGEN
POSIX spezifiziert nicht, ob der Signalzusammenhang gesichert werden soll oder nicht. Wenn Sichern der Signalmasken gewünscht wird, sollte sigsetjmp(3) benutzt werden. Die Verwendung von setjmp() bewirkt, dass Programme schwer zu verstehen und zu warten sind. Wenn möglich sollten Alternativen benutzt werden.

SIEHE AUCH
longjmp(3), sigsetjmp(2), siglongjmp(2).