strerror

STRERROR(3)              Manual del Programador de Linux             STRERROR(3)



NOMBRE
       strerror, strerror_r - devuelve una cadena de caracteres describiendo un
       código de error

SINOPSIS
       #include <string.h>

       char *strerror(int errnum);
       int strerror_r(int errnum, char *buf, size_t n);

DESCRIPCIÓN
       La función strerror() devuelve una cadena de caracteres que describe el
       código de error pasado en el argumento errnum, usando posiblemente la
       categoría LC_MESSAGES de la localización actual para seleccionar el
       idioma apropiado.  Esta cadena no debe ser modificada por la aplicación,
       pero puede ser modificada por una llamada posterior a perror() o
       strerror().  Ninguna función de biblioteca modificará esta cadena.

       La función strerror_r() es similar a strerror(), pero es una función hilo
       seguro. Devuelve la cadena en el buffer suministrado por el usuario buf
       de longitud n.


VALOR DEVUELTO
       La función strerror() devuelve la cadena de descripción del error
       apropiada, o un mensaje de error desconocido si el código de error es
       inválido.  El valor de errno no se modifica en una llamada con éxito, y
       toma un valor distinto de cero en caso de error.  La función strerror_r()
       devuelve 0 en caso de éxito y -1 si falla, modificando la variable errno.


ERRORES
       EINVAL El valor de errnum no es un número de error válido.

       ERANGE El buffer pasado tiene un tamaño insuficiente para contener la
              cadena de descripción del error.


CONFORME A
       SVID 3, POSIX, BSD 4.3, ISO/IEC 9899:1990 (C89).
       strerror_r() con el prototipo dado arriba está especificada por SUSv3, y
       estuvo en uso bajo Digital Unix y HP Unix. Una función incompatible, con
       el prototipo

       char *strerror_r(int errnum, char *buf, size_t n);

       es una extensión de GNU usada por glibc (desde 2.0), y debe ser
       considerada obsoleta en favor de SUSv3.  La versión de GNU puede, pero no
       necesita, usar el buffer suministrado por el usuario.  Si lo hace, el
       resultado puede ser truncado en caso de que el buffer sea demasiado
       pequeño. El resultado termina siempre con el carácter NUL.

VÉASE TAMBIÉN
       errno(3), perror(3), strsignal(3)



                                 16 octubre 2001                     STRERROR(3)