411 REFERENCE · Wikibooks
C programming/stdio.h/perror
Reference material by Wikibooks contributors. This retains its source identity and is not 411 news reporting.
The POSIX error function, perror, is used in C and C++ to print an error message to stderr, based on the error state stored in errno.http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf
ISO/IEC 9899:1999 specification
p. 305, § 7.19.10.2It prints str and an implementation-defined error message corresponding to the global variable errno.
History
The definition of perror was first released in Issue 1 of the System V Interface Definition.
Usage
Inclusion
#include <stdio.h>
Declaration
void perror(const char* prefix);
Example
int fd = open("/etc/passwd", O_RDONLY);
if (fd == -1) {
perror("open");
exit(1);
}
Semantics
If the parameter prefix is non-NULL, perror will first print prefix followed by a colon and a space to standard error. Then, it will print the result of strerror to standard error, followed by a newline character. For instance the above example may print
open: Permission denied
References
External links
C++ reference for std::perror
deep