errno虽然可以描述错误码,但是每次对照表格查询错误原因还是有些不遍历。
库函数提供了两种方式来获取错误的具体信息:
#include <stdio.h>
void perror(const char *s);该函数可以根据当前的errno,输出信息到标准错误输出上,输出时还可以带上通过参数传递进来的其他额外信息。
需要注意的是,需要在发生错误时立刻调用该函数,否则有可能errno被后面其他的错误冲刷掉,从而造成错误信息的不准确。
#include <string.h>
char * strerror(int errnum);strerror根据输入的错误码信息,返回一个错误字符串。
其优点是即使当前没有发生错误,也可以通过错误码查看任意的错误的信息。
#include <stdio.h>
#include <errno.h>
#include <string.h>
extern int errno;
int main()
{
FILE* fp =fopen("./ttt", "r");
if(fp == 0)
{
printf("errn