Date création : 27-03-2008 20:23:44
 Vous êtes dans : GNU/Linux Astuces / Pages man [Section3 - Sous-fonctions]
STRERROR
Index
- NOM
- SYNOPSIS
- DESCRIPTION
- VALEUR RENVOYÉE
- ERREURS
- CONFORMITÉ
- VOIR AUSSI
- TRADUCTION
NOM
strerror, strerror_r - Obtenir le libellé d'un numéro d'erreur
SYNOPSIS
#include <string.h>
char *strerror (int errnum);
char *strerror_r(int errnum, char *buf, size_t buflen);
/* strerror_r() spécifique GNU */
#define _XOPEN_SOURCE 600
#include <string.h>
int strerror_r(int errnum, char *buf, size_t buflen);
/* strerror_r() conforme XSI */
DESCRIPTION
La fonction strerror() 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 multithread. Cette fonction est
disponible en deux versions : une version conforme XSI spécifiée dans
POSIX.1-2001 et une version spécifique GNU (disponible depuis la glibc
2.0). Si _XOPEN_SOURCE est définie avec la valeur 600, c'est la version
conforme XSI qui est fournie, sinon c'est la version spécifique GNU.
La version de strerror_r() conforme XSI est préférée pour les
applications portables. Elle renvoie la chaîne dans le tampon buf de
longueur buflen fourni par l'appelant.
La version de strerror_r() spécifique GNU renvoie un pointeur sur une
chaîne contenant le message d'erreur. Cela peut être soit un pointeur vers
une chaîne que la fonction stocke dans buf, soit un pointeur vers une
chaîne statique (immuable) (auquel cas buf n'est pas utilisé). Si la
fonction stocke une chaîne dans buf, au plus buflen octets sont
stockés (la chaîne peut être tronquée si buflen est trop petit) et la
chaîne inclut toujours l'octet nul de terminaison.
VALEUR RENVOYÉE
Les fonctions strerror() et strerror_r() renvoient la description
correspondant au code transmis, ou un message « Unknown error nnn » si le
numéro d'erreur n'existe pas.
La fonction strerror_r() conforme XSI renvoie 0 si elle réussit et -1 si
elle échoue et écrit errno pour indiquer l'erreur.
ERREURS
- EINVAL
-
La valeur de errnum n'est pas un code d'erreur valide.
- ERANGE
-
Le tampon fourni n'est pas assez grand.
CONFORMITÉ
POSIX.1-2001.
La fonction strerror_r() spécifique GNU n'est pas une extension
standard.
POSIX.1-2001 permet à strerror() d'écrire errno si l'appel rencontre
une erreur mais ne spécifie pas quelle valeur devrait être retournée comme
résultat de fonction dans l'éventualité d'une erreur. Sur certains systèmes,
strerror() renvoie NULL si le numéro d'erreur est inconnu. Sur d'autres,
strerror() renvoie une chaîne du style « Error nnn occurred » et écrit
EINVAL dans errno si le numéro d'erreur est inconnu.
VOIR AUSSI
err(3), errno(3), error(3), perror(3), strsignal(3)
TRADUCTION
Cette page de manuel a été traduite et mise à jour par
Christophe Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003,
puis par Alain Portal <aportal AT univ-montp2 DOT fr> jusqu'en 2006.
La traduction de cette page de manuel est basée sur les traductions
disponibles sur http://manpagesfr.free.fr/,
mais est gérée par l'équipe francophone de traduction de Debian
au travers de la liste de discussion debian-l10n-french.
Veuillez signaler toute erreur de traduction par un rapport de bogue sur
le paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document en
utilisant la commande
« man -L C <section> <page_de_man> ».
|