table of contents
other sections
| ERR(3) | Library Functions Manual | ERR(3) |
NOMBRE¶
err, verr,
errx,
verrx,
warn,
vwarn,
warnx,
vwarnx, —
mensajes de error con formato
SINOPSIS¶
#include
<err.h>
void
err(int
eval, const char *fmt,
...) void
errx(int
eval, const char *fmt,
...) void
warn(const char
*fmt, ...)
void
warnx(const char
*fmt, ...)
#include
<stdarg.h>
void
verr(int
eval, const char *fmt,
va_list args)
void
verrx(int
eval, const char *fmt,
va_list args)
void
vwarn(const char
*fmt, va_list args)
void
vwarnx(const
char *fmt, va_list args)
DESCRIPCIÓN¶
La familia de funcioneserr() y
warn() muestran un mensaje de error con
formato en la salida estándar de error. En todos los casos, se imprime
el último componente del nombre del programa, un carácter punto
y un espacio. Si el argumento fmt es distinto
de NULL, se imprime un mensaje de error con formato al estilo de
printf(3)
Las funciones err(),
verr(),
warn(), y
vwarn() añaden un mensaje de error
obtenido con strerror(3) basado en un
código o en la variable global errno,
precedido por otro punto y un espacio a menos que el argumento
fmt sea
NULL.
Las funciones err(),
verr(),
warn(), y
vwarn() usan la variable global
errno para buscar el mensaje de error.
Las funciones errx() y
warnx() no añaden ningún
mensaje de error.
Las funciones err(),
verr(),
errx(), y
verrx() no regresan, sino que terminan la
ejecución con el valor del argumento
eval.
EJEMPLOS¶
Muestra la cadena de información del error actual y termina:if ((p = malloc(size)) == NULL) err(1, NULL); if ((fd = open(file_name, O_RDONLY, 0)) == -1) err(1, "%s", file_name);
if (tm.tm_hour < START_TIME) errx(1, "too early, wait until %s", start_time_string);
if (
warnx("%s: %s: trying the block device",
raw_device, strerror(errno));
if ((fd = open(block_device, O_RDONLY, 0)) == -1)
err(1, "%s", block_device);
VÉASE TAMBIÉN¶
exit(3), printf(3), perror(3), strerror(3)HISTORIA¶
Las funcioneserr() y
warn() aparecieron por primera vez en
4.4BSD.| March 6, 1999 | Debian |