|
|||||||
|
|
ASSERTSection: Manuel du programmeur Linux (3)Updated: 21 juillet 2003 Index Return to Main Contents NOMassert - Terminer le programme en cas d'échec d'un test.SYNOPSIS#include <assert.h> void assert (int expression); DESCRIPTIONSi la macro NDEBUG était définie lors 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 standard, et termine l'exécution du programme en cours en appelant abort() si l'expression est fausse (égale à zéro).Le but de cette macro est d'aider le programmeur à trouver des bogues dans son application. Le message "assertion failed un file foo.c, function do_bar(), line 1287" n'est d'aucune aide pour l'utilisateur final. VALEUR RENVOYÉEAucune valeur n'est renvoyée.CONFORMITÉISO9899 (ANSI C). Dans le standard 1990 expression devait être de type int et le comportement était indéfini si ce n'était pas le cas, mais depuis le standard 1999, elle peut être de n'importe quel type scalaire.BOGUESassert() étant implementée comme une macro, si l'expression testée à des effets de bord, le comportement du programme diffèrera suivant l'existence de NDEBUG. Ceci peut induire des Heisenbugs (conformes à la théorie de Heisenberg ;-), qui disparaissent quand le débugging est utilisé.VOIR AUSSIexit(3), abort(3) assert_perror(3)TRADUCTIONChristophe Blaess, 1996-2003.
Index | ||||||
|
|
|
Home :: Copyright :: Privacy :: Credits :: Get a free Linuxinfor Email Account Document on this page is part of "Linuxinfor Man Pages in HTML Format: man3". See Index Page for more info about Authorship and Copyright. 1999-2008 Linuxinfor.com. No rights reserved. |