.TH PERROR 3 .SH NAME perror, sys_errlist, sys_nerr \- system error messages .SH SYNOPSIS .B perror(s) .br .B char *s; .PP .B int sys_nerr; .br .B char *sys_errlist[]; .SH DESCRIPTION .I Perror 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 .I s is printed, then a colon, then the message and a new-line. Most usefully, the argument string is the name of the program which incurred the error. The error number is taken from the external variable .I errno (see .IR intro (2)), which is set when errors occur but not cleared when non-erroneous calls are made. .PP To simplify variant formatting of messages, the vector of message strings .I sys_errlist is provided; .I errno can be used as an index in this table to get the message string without the newline. .I 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. .SH "SEE ALSO" intro(2)