Provided by:
manpages-fr_1.67.0-1_all 
NOM
strerror, strerror_r - Obtenir le libellé d’un code d’erreur.
SYNOPSIS
#include <string.h>
char *strerror (int errnum);
int strerror_r(int errnum, char *buf, size_t n);
DESCRIPTION
La fonction strerrror() renvoie une chaîne décrivant le code d’erreur
passé en argument errnum, en utilisant éventuellement la catégorie
LC_MESSAGES de la localisation pour sélectionner la langue appropriée.
Cette chaîne ne doit pas être modifiée par l’application, mais peut
être écrasée par un appel ultérieur à perror() ou strerror(). Aucune
autre fonction de bibliothèque ne modifie cette chaîne.
La fonction strerror_r() est identique à strerror() mais fonctionne
correctement dans un environnement multi-threads, puisqu’elle renvoie
la chaîne dans le buffer buf de longueur n fourni par l’appelant.
VALEUR RENVOYÉE
La fonction strerror() renvoie la description correspondant au code
transmis, ou un message d’erreur inconnue si le code n’existe pas. La
valeur de errno n’est pas modifiée lors des appels réussi, mais
contient une valeur non-nulle en cas d’erreur.
La fonction strerror_r() renvoie 0 si elle réussit et -1 sinon, en
remplissant errno.
ERREURS
EINVAL La valeur de errnum n’est pas un code d’erreur valide.
ERANGE Le buffer fourni n’est pas assez grand.
CONFORMITÉ
SVID 3, POSIX, BSD 4.3, ISO/IEC 9899:1990 (C89).
La fonction strerror_r() avec le prototype décrit ci-dessus est
spécifiée par SUSv3, et était utilisée sous Digital Unix et HP Unix.
Une fonction incompatible, avec le prototype
char *strerror_r(int errnum, char *buf, size_t n);
était une extension GNU utilisée par la GlibC, et doit être considérée
comme obsolète en regard de SUS v3. La version GNU pouvait, sans y
être obligée, utiliser le buffer fourni par l’utilisateur. Si elle le
faisait, le résultat pouvait être tronqué si le buffer était trop
petit. Le résultat était toujours terminé par un NUL.
VOIR AUSSI
errno(3), perror(3), strsignal(3)
TRADUCTION
Christophe Blaess, 1996-2003.