Manpage of PERROR

PERROR

Section: Linux Programmer's Manual (3)
Updated: 2016-03-15
Index
 

NAME

perror - print a system error message  

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) */

Feature Test Macro Requirements for glibc (see feature_test_macros(7)):

sys_errlist, sys_nerr:
    Since glibc 2.19:
        _DEFAULT_SOURCE
    Glibc 2.19 and earlier:
        _BSD_SOURCE  

DESCRIPTION

The perror() function produces a message on standard error describing the last error encountered during a call to a system or library function.

First (if sis not NULL and *sis not a null byte (aq\0aq)), the argument string sis printed, followed by a colon and a blank. Then an error message corresponding to the current value of errnoand a new-line.

To be of most use, the argument string should include the name of the function that incurred the error.

The global error list sys_errlist[], which can be indexed by errno, can be used to obtain the error message without the newline. The largest message number provided in the table is sys_nerr-1. Be careful when directly accessing this list, because new error values may not have been added to sys_errlist[]. The use of sys_errlist[] is nowadays deprecated; use strerror(3) instead

When a system call fails, it usually returns -1 and sets the variable errnoto a value describing what went wrong. (These values can be found in <errno.h>.) Many library functions do likewise. The function perror() serves to translate this error code into human-readable form. Note that errnois undefined after a successful system call or library function call: this call may well change this variable, even though it succeeds, for example because it internally used some other library function that failed. Thus, if a failing call is not immediately followed by a call to perror(), the value of errnoshould be saved.  

ATTRIBUTES

For an explanation of the terms used in this section, see attributes(7).
InterfaceAttributeValue
perror() Thread safetyMT-Safe race:stderr

 

CONFORMING TO

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

The externals sys_nerrand sys_errlistderive from BSD, but are not specified in POSIX.1.  

NOTES

The externals sys_nerrand sys_errlistare defined by glibc, but in <stdio.h>.  

SEE ALSO

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


 

Index

NAME
SYNOPSIS
DESCRIPTION
ATTRIBUTES
CONFORMING TO
NOTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 22:27:54 GMT, June 20, 2016 Click Here!