NOM¶
assert - Terminer le programme en cas d'échec d'un test
SYNOPSIS¶
#include <assert.h>
void assert(scalar expression);
DESCRIPTION¶
Si la macro
NDEBUG est définie au moment de la dernière
inclusion de
<assert.h>, la macro
assert() ne
génère aucun code et ne fait rien. Sinon, la macro
assert() affiche un message d'erreur sur la sortie d'erreur et termine
l'exécution du programme en cours en appelant
abort(3) si
expression est fausse (égale à zéro).
Le but de cette macro est d'aider les programmeurs à trouver des bogues
dans leurs applications. Le message « assertion failed in file
foo.c, function do_bar(), line 1287 » ne sert à rien pour
l'utilisateur.
VALEUR RENVOYÉE¶
Aucune valeur n'est renvoyée.
POSIX.1-2001, C89, C99. Dans C89,
expression devait être de type
int et le comportement était indéfini si ce
n'était pas le cas, mais dans C99, elle peut être de n'importe
quel type scalaire.
BOGUES¶
assert() étant implémentée comme une macro, si
l'expression testée a des effets de bord, le comportement du programme
différera suivant l'existence de
NDEBUG. Cela peut induire des
« Heisenbugs » (N.d.T : bogue qui
disparaît ou se modifie quand on essaye de le localiser) qui
disparaissent lors du débogage.
VOIR AUSSI¶
abort(3),
assert_perror(3),
exit(3)
COLOPHON¶
Cette page fait partie de la publication 3.65 du projet
man-pages Linux.
Une description du projet et des instructions pour signaler des anomalies
peuvent être trouvées à l'adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION¶
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a
<
http://po4a.alioth.debian.org/> par l'équipe de traduction
francophone au sein du projet perkamon
<
http://perkamon.alioth.debian.org/>.
Christophe Blaess <
http://www.blaess.fr/christophe/> (1996-2003), Alain
Portal <
http://manpagesfr.free.fr/> (2003-2006). Florentin Duneau et
l'équipe francophone de traduction de Debian (2006-2009).
Veuillez signaler toute erreur de traduction en écrivant à
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet
manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce
document en utilisant la commande «
man -L C
<section>
<page_de_man> ».