1.cplusplus的官网介绍
2.翻译
函数
perror
void perror ( const char * str );
打印错误信息
将errno(最后一个错误数字)的值解释为错误信息,之后把它打印到stderr中(标准错误输出流,通常是控制台)(备注有关"流"的概念在75.【C语言】文件操作(2)),可选地在其前面加上在str中指定的自定义消息
errno是一个用于描述错误状态或者诊断信息(由于调用了库函数)的整型变量(任何C的标准库函数可能设置errno的值,尽管在此参考中没有提及,有关更多信息请参见errno 点我跳转)
由perror产生的错误信息依赖于平台
形参str不应该为空指针,打印str后跟着一个 : 和一个空格,接着无论str是否为空指针,都会打印生成的错误描述,后跟一个换行字符(\n)
perror函数应该在错误产生后立刻调用,否则它可能被其他调用函数所覆盖
参数
包含要在错误信息本身之前打印的自定义消息的C字符串,如果它是一个空指针,则不打印前面的自定义消息,但仍然打印错误信息。
按照惯例,通常使用应用程序的名称作为参数。
返回值
无
3.使用
复制一下代码到VS上测试,确保在项目的目录中没有a.txt文件
#include <stdio.h>
#include <errno.h>
int main()
{
FILE* pf = fopen("a.txt", "r");
if (pf == NULL)
{
perror("fopen");
return 1;//错误返回
}
fclose(pf);
pf = NULL;
return 0;
}
效果
细节验证了cplusplus网的介绍