C 编程/stdio.h/perror
外观
POSIX 错误函数 perror 用于 C 和 C++ 中,根据存储在 errno 中的错误状态,向 stderr 打印错误消息。[1] 它打印 str 和与全局变量 errno 对应的实现定义的错误消息。
perror 的定义首次发布在 System V 接口定义的第 1 版中。
#include <stdio.h>
void perror(const char* prefix);
int fd = open("/etc/passwd", O_RDONLY);
if (fd == -1) {
perror("open");
exit(1);
}
如果参数 prefix 不是 NULL,perror 将首先打印 prefix,后跟一个冒号和一个空格到标准错误。然后,它会打印 strerror 的结果到标准错误,后跟一个换行符。例如,上面的示例可能会打印
open: Permission denied
- ↑ ISO/IEC 9899:1999 规范 (PDF). p. 305, § 7.19.10.2.