perror(3)
Name
perror, strerror, sys_errlist, sys_nerr − system error messages
Syntax
void perror(s)
char *s;
int sys_nerr;
char *sys_errlist[];
#include <string.h>
char *strerror(err)
int err;
Description
The perror subroutine produces a short error message on the standard error file describing the last error encountered during a call to the system from a C program. First the argument string s , if it is not a null pointer, is printed followed by a colon and a space; then the message and a new line are printed. Most usefully, the argument string is the name of the program which incurred the error. The error number is taken from the external variable errno which is set when errors occur but not cleared when nonerroneous calls are made. For further information, see intro(.).
To simplify variant formatting of messages, the vector of message strings sys_errlist is provided; errno can be used as an index in this table to get the message string without the new line. The sys_nerr is the number of messages provided for in the table; it should be checked because new error codes may be added to the system before they are added to the table. The strerror function will also return a pointer to the message text for a given error number.
See Also
intro(2), errno(,), psignal(3)