Provided by: manpages-de-dev_1.11-1_all 

BEZEICHNUNG
assert - Bricht das Programm ab, wenn der Prüfausdruck falsch ergibt.
ÜBERSICHT
#include <assert.h>
void assert(scalar expression);
BESCHREIBUNG
Ist das Makro NDEBUG definiert, wenn das letzte Include für <assert.h> erfolgt, erzeugt das Makro
assert() keinen Code und bewirkt gar nichts. Anderenfalls wird assert() das Programm abbrechen, wenn die
Auswertung von expression falsch ergibt, also das Ergebnis gleich Null ist. assert() gibt dann eine
Meldung auf der Standardfehlerausgabe aus und ruft abort(3) auf, um das Programm abzubrechen.
Dieses Makro hat den Zweck, die Programmierer bei der Fehlersuche in ihren Programmen zu helfen. Die
Meldung »assertion failed in file foo.c, function do_bar(), line 1287« hilft dem Anwender nicht weiter.
RÜCKGABEWERT
Es wird kein Wert zurückgegeben.
ATTRIBUTE
Siehe attributes(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.
┌───────────────┬───────────────────────┬─────────┐
│ Schnittstelle │ Attribut │ Wert │
├───────────────┼───────────────────────┼─────────┤
│ assert() │ Multithread-Fähigkeit │ MT-Safe │
└───────────────┴───────────────────────┴─────────┘
KONFORM ZU
POSIX.1-2001, POSIX.1-2008, C89, C99. In C89 muss expression ein int sein, sonst ist das Verhalten nicht
definiert. In C99 darf expression jeden skalaren Typ annehmen.
FEHLER
assert() ist ein Makro. Wenn der geprüften Ausdruck Seiteneffekte hat, ändert sich das Verhalten des
Programms abhängig davon, ob NDEBUG definiert ist oder nicht. Dies kann sporadische Fehler verursachen,
die bei aktivierter Debug-Option nicht auftreten.
SIEHE AUCH
abort(3), assert_perror(3), exit(3)
KOLOPHON
Diese Seite ist Teil der Veröffentlichung 4.04 des Projekts Linux-man-pages. Eine Beschreibung des
Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
sich unter http://www.kernel.org/doc/man-pages/.
ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Ralf Demmer <rdemmer@rdemmer.de> und Martin
Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.
Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.
Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an
<debian-l10n-german@lists.debian.org>.
GNU 8. August 2015 ASSERT(3)