« Introduction au langage C/Le préprocesseur » : différence entre les versions

Contenu supprimé Contenu ajouté
Thierry46 (discussion | contributions)
→‎#line : Mise en forme et précision
Thierry46 (discussion | contributions)
→‎#error : Complément
Ligne 286 :
 
=== #error ===
La directive '''#error''' vous sert à arrêter la compilation lorsque vous jugez que votre programme ne pourra pas fonctionner. Les raisons sont par exemple :
La commande '''#error''' sert a spécifier une erreur qui serrait survenu lors de la compilation.
*Une plate-forme non supportée;
Sa syntaxe est la suivante : <nowiki>#error</nowiki> ''message d\'erreur''.
*Une ressource non trouvée par un outil comme ''configure'';
Lorsque le compilateur arrive à cette ligne, il arrête la compilation et affiche le message d'erreur.
*Une constante symbolique dont la valeur est incorrecte.
 
Elle est souvent placée dans la partie '''#else''' d'une instruction de compilation conditionnelle '''#if''' ... '''#else''' ... '''#endif'''.
 
Sa syntaxe est la suivante : <tt>#error "message d'erreur"</tt>. Lorsque le compilateur arrive à cette ligne, il arrête la compilation et affiche le ''message d'erreur''.
 
<source lang=c>
#if defined(HAVE_DIRENT_H) && defined(HAVE_SYS_TYPES_H)
#include <dirent.h>
#include <sys/types.h>
#else
/* Arret : dirent.h et sys/types.h non trouves sur ce systeme */
#error "Readdir non implemente sur cette plateforme"
#endif
</source>
 
=== #pragma ===