PERROR(3) | Library Functions Manual | PERROR(3)

# NAME

`perror` — write error messages to standard error

# SYNOPSIS

`#include <stdio.h>`

void
`perror`(const char *string);

# DESCRIPTION

The `perror`() function looks up the error message string affiliated with an error number and writes it, followed by a new-line, to the standard error stream.

If the argument string is not the `NULL` pointer and is not zero length, it is prepended to the message string and separated from it by a colon and a space (‘`:` ’). Otherwise, only the error message string is printed.

The contents of the error message string are the same as those returned by `strerror`() with argument errno.

# SEE ALSO

intro(2), psignal(3), setlocale(3), strerror(3)

# STANDARDS

The `perror`() function conforms to ANSI X3.159-1989 (“ANSI C89”).

# HISTORY

The `perror`() function first appeared in Version 4 AT&T UNIX.

# CAVEATS

On systems other than OpenBSD, the `LC_MESSAGES` locale(1) category can cause different strings to be printed instead of the normal error messages; see CAVEATS in setlocale(3) for details.

May 16, 2019 | Debian