Fonctions de base en langage C/errno.h
Apparence

Le fichier d'entête errno.h définit le mécanisme qui permet de savoir si une fonction système ou une fonction de la bibliothèque standard a rencontré une erreur. Elle écrit alors une valeur entière dans errno.
Remarques sur l’utilisation de errno
[modifier | modifier le wikicode]- une fonction qui s'exécute avec succès ne remet pas à 0 errno, vous devez vous en charger avant de l'appeler.
- errno peut ne pas être une variable : ne pas utiliser son adresse.
- Vous devez stocker ou exploiter au plus tôt errno juste après l'appel de la fonction. Tout appel à une fonction autre que perror risque d'écraser errno.
- Ne pas utiliser le mécanisme errno dans vos propres fonctions.
Constantes symboliques
[modifier | modifier le wikicode]errno.h contient la définition de constantes symboliques qui représentent les codes d'erreur de errno.
Ces constantes peuvent être spécifiques à un système. Il faut étudier errno.h sur la machine cible pour assurer la portabilité des programmes.
Fonctions utiles
[modifier | modifier le wikicode]- void perror(char *s) : Affiche le message d'erreur correspondant à errno sur stderr.
- char *strerror(int n) : Renvoie le message d'erreur correspondant à n.
Un extrait de code qui analyse le résultat de la fonction système stat en cas de problème :
cr = stat(nomFichier, &buf);
if (cr != 0)
{
perror("stat");
exit(EXIT_FAILURE);
}