Provided by:
manpages-de-dev_0.10-1_all 
BEZEICHNUNG
setjmp - Stapelspeicher-Zusammenhang fur nicht lokale Verzweigung
sichern
"UBERSICHT
#include <setjmp.h>
int setjmp(jmp_buf env);
int sigsetjmp(sigjmp_buf env, int savesigs);
Mit Glibc erforderliche Makros (siehe feature_test_macros(7)):
setjmp(): siehe ANMERKUNGEN
sigsetjmp(): _POSIX_C_SOURCE >= 1 || _XOPEN_SOURCE || _POSIX_C_SOURCE
BESCHREIBUNG
setjmp() und longjmp(3) sind nutzlich fur die Behandlung von Fehlern
und Unterbrechungen, die in einem Unterprogramm niedriger Stufe eines
Programms auftreten. setjmp() sichert den Stapelspeicher-Zusammenhang
bzw. die Stapelspeicher-Umgebung in env fur spatere Benutzung durch
longjmp(3). Der Stapelspeicher-Zusammenhang wird ungultig, wenn die
Funktion, die setjmp() aufgerufen hat, beendet wird.
sigsetjmp() ist setjmp() ahnlich. Nur wenn savesigs nicht Null ist,
wird die aktuelle Signalmaske des Prozesses in env gespeichert und
wiederhergestellt, wenn spater mit diesem env ein siglongjmp(3)
durchgefuhrt wird.
R"UCKGABEWERT
setjmp() und sigsetjmp() geben 0 zuruck, falls sie sofort zuruckkehren,
und nicht Null, wenn sie von longjmp(3) oder siglongjmp(3) zuruckkehren
und den gesicherten Zusammenhang benutzen.
KONFORM ZU
C89, C99 und POSIX.1-2001 spezifizieren setjmp(). POSIX.1-2001
spezifiziert sigsetjmp().
ANMERKUNGEN
POSIX spezifiziert nicht, ob setjmp() die Signalmaske sichern wird. In
System-V wird es dies nicht tun. In 4.3BSD wird es dies tun und dort
gibt es eine Funktion _setjmp, die es nicht tut. StandardmaBig folgt
Linux/Glibc dem Verhalten von System-V, aber das BSD-Verhalten wird
bereitgestellt, wenn das _BSD_SOURCE-Feature-Test-Macro definiert ist
und weder _POSIX_SOURCE, _POSIX_C_SOURCE, _XOPEN_SOURCE,
_XOPEN_SOURCE_EXTENDED, _GNU_SOURCE noch _SVID_SOURCE definiert ist.
Falls Sie portable Signalmasken fur das Speichern und Wiederherstellen
mochten, benutzen Sie sigsetjmp() und siglongjmp(3).
setjmp() und sigsetjmp() erschweren das Verstandnis und die Verwaltung
von Programmen. Falls moglich, sollte eine Alternative benutzt werden.
SIEHE AUCH
longjmp(3), siglongjmp(3)
KOLOPHON
Diese Seite ist Teil der Veroffentlichung 3.32 des Projekts
Linux-man-pages. Eine Beschreibung des Projekts und Informationen, wie
Fehler gemeldet werden konnen, finden sich unter
http://www.kernel.org/doc/man-pages/.
"UBERSETZUNG
Die deutsche Ubersetzung dieser Handbuchseite wurde von Patrick Rother
<krd@gulu.net> und Chris Leick <c.leick@vollbio.de> erstellt.
Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General
Public License Version 3 oder neuer bezuglich der Copyright-
Bedingungen. Es wird KEINE HAFTUNG ubernommen.
Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an <debian-l10n-
german@lists.debian.org>.
26. Juni 2009 SETJMP(3)