perror

PERROR(3)                  Manuel du programmeur Linux                 PERROR(3)



NOM
       perror - Afficher un message d'erreur système

SYNOPSIS
       #include <stdio.h>

       void perror(const char *s);

       #include <errno.h>

       const char *const sys_errlist[];
       int sys_nerr;
       int errno;       /* Not really declared this way; see errno(3) */

   Exigences de macros de test de fonctionnalités pour la glibc (consulter
   feature_test_macros(7)) :

       sys_errlist, sys_nerr:
           From glibc 2.19 to 2.31:
               _DEFAULT_SOURCE
           Glibc 2.19 and earlier:
               _BSD_SOURCE

DESCRIPTION
       La fonction perror() produit un message sur la sortie d'erreur standard
       décrivant la dernière erreur rencontrée lors d'un appel à une fonction
       système ou de bibliothèque.

       Premièrement, la chaîne s en argument est imprimée (si s n'est pas NULL
       et *s n'est pas l’octet NULL (« e0 »), suivie d'une virgule et d’espaces,
       puis un message d'erreur correspondant à la valeur courante de errno et
       un saut de ligne.

       Pour être la plus utile possible, la chaîne en argument doit inclure le
       nom de la fonction dans laquelle l'erreur est survenue.

       La liste globale d'erreurs sys_errlist[] pouvant être indexée par errno
       peut être utilisée pour obtenir le message d'erreur sans le saut de
       ligne. Le plus grand numéro de message contenu dans cette table est
       sys_nerr - 1. Soyez prudents lors des accès directs à cette liste car de
       nouvelles valeurs d’erreurs n'ont peut-être pas été ajoutées dans
       sys_errlist[]. L'utilisation de sys_errlist[] est maintenant obsolète,
       utilisez strerror(2) à la place.

       Quand un appel système échoue, il renvoie habituellement -1, et place le
       code d'erreur dans errno (les codes sont décrits dans <errno.h>).
       Beaucoup de fonctions de bibliothèque se comportent également ainsi. La
       fonction perror() permet de traduire les codes d'erreur en une forme
       humainement lisible. Notez que errno est indéfinie après un appel de
       fonction système ou de bibliothèque réussi. Une telle fonction peut
       modifier errno même si elle réussit, ne serait-ce que parce que des
       appels système internes peuvent échouer. Ainsi, si un appel qui échoue
       n'est pas immédiatement suivi par perror, la valeur de errno doit être
       sauvegardée.

VERSIONS
       Depuis la version 2.32 de la glibc, les déclarations de sys_nerr et
       sys_errlist ne sont plus contenues dans <stdio.h>.

ATTRIBUTS
       Pour une explication des termes utilisés dans cette section, consulter
       attributes(7).

       ┌───────────────────────────┬──────────────────────┬─────────────────────┐
       │Interface                  Attribut             Valeur              │
       ├───────────────────────────┼──────────────────────┼─────────────────────┤
       │perror()                   │ Sécurité des threads │ MT-Safe race:stderr │
       └───────────────────────────┴──────────────────────┴─────────────────────┘

CONFORMITÉ
       perror(), errno : POSIX.1-2001, POSIX.1-2008, C89, C99, 4.3BSD.

       Les variables externes sys_nerr et sys_errlist proviennent de BSD mais ne
       sont pas définies par POSIX.1.

NOTES
       Les variables externes sys_nerr et sys_errlist sont définies par la
       glibc, mais dans <stdio.h>.

VOIR AUSSI
       err(3), errno(3), error(3), strerror(3)

COLOPHON
       Cette page fait partie de la publication 5.13 du projet man-pages Linux.
       Une description du projet et des instructions pour signaler des anomalies
       et la dernière version de cette page peuvent être trouvées à l'adresse
       https://www.kernel.org/doc/man-pages/.


TRADUCTION
       La traduction française de cette page de manuel a été créée par
       Christophe Blaess <https://www.blaess.fr/christophe/>, Stéphan Rafin
       <stephan.rafin@laposte.net>, Thierry Vignaud <tvignaud@mandriva.com>,
       François Micaux, Alain Portal <aportal@univ-montp2.fr>, Jean-Philippe
       Guérard <fevrier@tigreraye.org>, Jean-Luc Coulon (f5ibh) <jean-
       luc.coulon@wanadoo.fr>, Julien Cristau <jcristau@debian.org>, Thomas
       Huriaux <thomas.huriaux@gmail.com>, Nicolas François
       <nicolas.francois@centraliens.net>, Florentin Duneau <fduneau@gmail.com>,
       Simon Paillard <simon.paillard@resel.enst-bretagne.fr>, Denis Barbier
       <barbier@debian.org>, David Prévot <david@tilapin.org>, Frédéric Hantrais
       <fhantrais@gmail.com> et Grégoire Scano <gregoire.scano@malloc.fr>

       Cette traduction est une documentation libre ; veuillez vous reporter à
       la GNU General Public License version 3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩ concernant les conditions de
       copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel,
       veuillez envoyer un message à debian-l10n-french@lists.debian.org ⟨⟩.




                                  22 mars 2021                         PERROR(3)