perror 打印系统的错误消息
void perror(const char *s);
原型在 stdio.h
说明:
perror打印错误消息到 stderr流(通过控制台), 表示最后一个库程序的系统错误信息。
首先 打印参数string,接着 是冒号,然后 是对应于当前errno值的信息,最后换行 。规定传送的文件名是字符串参数。
通过全局变量 sys_errlist (定义在stdio.h中,extern char *_Cdecl sys_errlist[];)
获取信息字符数组, errno ( 定义在stdio.h中, extern int _Cdecl errno;)可以作为数组的下标以查找对应错误码的字符串,字符串本身并不包括换行符
全局变量sys_nerr (定义在stdio.h中, extern int _Cdecl sys_nerr;)包含数组中的项数
perror 没有返回值。
适用于UNIX系统,在ANSI C中有定义
#include<stdio.h>
int main()
{
FILE *fp;
fp = fopen("perror.dat", "r");
if(!fp)
perror("Unable to open the file");
return 0;
}