« Fonctions de base en langage C/assert.h » : différence entre les versions

Contenu supprimé Contenu ajouté
m Robot : Remplacement de texte automatisé (- n'est pas + n’est pas , - Aujourd'hui + Aujourd’hui , - d'euros + d’euros , - d'agir + d’agir , - l'apparence + l’apparence )
m Robot : Remplacement de texte automatisé (-\n(==={0,3})(?: *)([^\n=]+)(?: *)\1(?: *)\n +\n\1 \2 \1\n)
Ligne 7 :
}}
 
== Description ==
Ce fichier d'include ne définit qu'une seule macro : <code>assert(expression)</code>. Si ''expression'' est fausse (ou égale à 0), alors un message d'erreur est affiché et le programme est arrêté par <code>abort</code> :
 
Ligne 19 :
Si vous définissez la macro NDEBUG, la macro <code>assert</code> n’est pas prise en compte.
 
== Exemple ==
Le programme assert.c s'arrête par <code>assert</code> si on lui passe des paramètres.
<source lang="c">
Ligne 43 :
</source>
 
== Remarques ==
* Un message d'erreur tel que celui généré par <code>assert</code> n’est pas acceptable dans un code de production : il n’est pas compréhensible par un utilisateur et ne lui permet pas de savoir d'où vient le problème.
* <code>assert</code> peut être cependant utile pendant les phases de mises au point. Les erreurs détectées doivent être prises en compte d'une autre façon et exprimées par des messages plus compréhensibles. Les autres assertions qui n'ont pas été rencontrées pourront être laissées dans le code et rendues inactives à l'aide de NDEBUG.