1. perror
函数原型如下:
void perror(const char *s);
perror函数是标准的错误输出函数,如果参数s不为空,首先打印输出字符串s,然后紧跟着输出由全局整型变量errno所对应的错误信息。其中errno变量定义在errno.h中。例如:
Open file error: No such file or directory
2. strerror
函数原型如下:
char *strerror(int errnum);
strerror函数的作用是根据参数errnum返回所对应的错误信息,但实际并不会打印输出。例如:
函数原型如下:
void perror(const char *s);
perror函数是标准的错误输出函数,如果参数s不为空,首先打印输出字符串s,然后紧跟着输出由全局整型变量errno所对应的错误信息。其中errno变量定义在errno.h中。例如:
#include <stdio.h>
int main(void)
{
FILE *fp;
fp = fopen("test.txt", "r");
if (!fp) {
perror("Open file error");
return -1;
}
fclose(fp);
return 0;
}
编译执行之后,将打印出如下信息:Open file error: No such file or directory
2. strerror
函数原型如下:
char *strerror(int errnum);
strerror函数的作用是根据参数errnum返回所对应的错误信息,但实际并不会打印输出。例如:
#include <stdio.h>
#include <errno.h>
#include <string.h>
int main(void)
{
FILE *fp;
fp = fopen("test.txt", "r");
if (!fp) {
fprintf(stderr, "Open file error: %s\n", strerror(errno));
return -1;
}
fclose(fp);
return 0;
}
编译执行之后,将和上面输出同样的信息。