Provided by: manpages-es_1.55-10_all bug

NOMBRE

       perror - muestra un mensaje correspondiente a un error del sistema

SINOPSIS

       #include <stdio.h>

       void perror(const char *s);

       #include <errno.h>

       const char *sys_errlist[];
       int sys_nerr;

DESCRIPCIÓN

       La  rutina  perror()  produce  un  mensaje que va a la salida estándar de errores, describiendo el último
       error encontrado durante una llamada al sistema o a ciertas funciones de biblioteca.  Primero  (si  s  es
       distinto de NULL y *s no es NUL) se imprime la cadena s pasada como argumento, seguida de un signo de dos
       puntos y un espacio en blanco.  Después se imprime el mensaje y un salto de línea.

       Para  ser  de más utilidad, la cadena de caracteres pasada como argumento debería incluir el nombre de la
       función que incurrió en el error. El código del error se toma de la variable externa errno, que  toma  un
       valor cuando ocurre un error pero no es puesta a cero en una llamada no errónea.

       Puede  utilizarse  la  lista global de errores sys_errlist[], indexada por errno, para obtener el mensaje
       del error sin el salto de línea.  El número más alto de mensaje proporcionado en la tabla es sys_nerr -1.
       Tenga cuidado cuando acceda directamente a esta lista porque puede que no se  hayan  añadido  aún  nuevos
       valores de error a sys_errlist[].

       Cuando  una  llamada  al  sistema falla, normalmente devuelve -1 y pone en la variable errno un valor que
       describe qué fue mal. (Estos valores pueden encontrarse en <errno.h>.)  Muchas  funciones  de  biblioteca
       también  hacen  esto.   La  función perror() sirve para traducir este código de error a una forma que los
       humanos puedan entender.  Observe que errno tiene un valor sin definir tras  una  llamada  exitosa:  esta
       llamada  podría  muy  bien  cambiar incluso el valor de esta variable, a pesar de haber acabado bien, por
       ejemplo porque internamente empleara alguna otra función de biblioteca que hubiera fallado.  Así, si  una
       llamada fallida no es seguida inmediatamente por una llamada a perror, el valor de errno debe guardarse.

CONFORME A

       C ANSI, BSD 4.3, POSIX, X/OPEN

VÉASE TAMBIÉN

       strerror(3)

Linux                                           14 diciembre 2001                                      PERROR(3)