ERR(3) Manuale del programmatore di Linux ERR(3)

err, verr, errx, verrx, warn, vwarn, warnx, vwarnx - messaggi di errore formattati

#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);

Le famiglie di funzioni err() e warn() visualizzano un messaggio di errore formattato sull'uscita dello standard error. In ogni caso vengono stampati l'ultimo componente del nome del programma, un carattere di due punti, e uno spazio. Se l'argomento fmt non è NULL viene emesso un messaggio di errore formattato in stile printf(3). L'output è concluso da un carattere newline.

Le funzioni err(), verr(), warn() e vwarn() aggiungono un messaggio di errore ottenuto da strerror(3) basato sulla variabile globale errno, preceduto da un altro ":" e da uno spazio a meno che l'argomento fmt sia NULL.

Le funzioni errx() e warnx() non aggiungono un messaggio di errore.

Le funzioni err(), verr(), errx() e verrx() non ritornano, ma escono con il valore dell'argomento eval.

Per la spiegazione dei termini usati in questa sezione, vedere attributes(7).
Interfaccia Attributo Valore
err(), errx(), warn(), warnx(), verr(), verrx(), vwarn(), vwarnx() Thread safety MT-Safe locale

Queste funzioni sono estensioni BSD non standard.

Mostra la stringa di informazione attuale errno ed esce:


p = malloc(size);
if (p == NULL)
    err(EXIT_FAILURE, NULL);
fd = open(file_name, O_RDONLY, 0);
if (fd == -1)
    err(EXIT_FAILURE, "%s", file_name);

Visualizza un messaggio di errore ed esce:


if (tm.tm_hour < START_TIME)
    errx(EXIT_FAILURE, "too early, wait until %s",
            start_time_string);

Avvisa di un errore:


fd = open(raw_device, O_RDONLY, 0);
if (fd == -1)
    warnx("%s: %s: trying the block device",
            raw_device, strerror(errno));
fd = open(block_device, O_RDONLY, 0);
if (fd == -1)
    err(EXIT_FAILURE, "%s", block_device);

error(3), exit(3), perror(3), printf(3), strerror(3)

Questa pagina fa parte del rilascio 5.10 del progetto Linux man-pages. Una descrizione del progetto, le istruzioni per la segnalazione degli errori, e l'ultima versione di questa pagina si trovano su https://www.kernel.org/doc/man-pages/.

La traduzione italiana di questa pagina di manuale è stata creata da Giulio Daprelà <giulio@pluto.it>, Elisabetta Galli <lab@kkk.it> e Marco Curreli <marcocurreli@tiscali.it>

Questa traduzione è documentazione libera; leggere la GNU General Public License Versione 3 o successiva per le condizioni di copyright. Non ci assumiamo alcuna responsabilità.

Per segnalare errori nella traduzione di questa pagina di manuale inviare un messaggio a pluto-ildp@lists.pluto.it.

9 giugno 2020 Linux