NAME
perror - print a system error message
SYNOPSIS
#include <stdio.h>
void perror(const char *s);
#include <errno.h>
const char *sys_errlist[];
int sys_nerr;
int errno;
Feature Test Macro Requirements for glibc (see feature_test_macros(7)):
sys_errlist, sys_nerr: _BSD_SOURC
以上是 man perror 函数后的系统提示
在这里面可以看见errno是一个全局变量,系统每报一次错误,这个全局变量都会刷新一次错误码,
const char *sys_errlist[ ];这个指针数组中就是存放的是所有的错误信息,errno就是这个数组的下标
- char* strerror(errorno);这个函数就能获取上面存放错误信息的数组的字符串信息
printf(“%s\n",strerror(errorno));
//程序打印的是【#¥%……¥¥@#¥……¥@】
而perror()就可以字节打印出上面的最近一次的错误信息perror(“.......”);
perror函数传入的内容会出现在打印的内容的前面
perror(“STACK ERROR:”)//程序打印的是【 STACK ERROR:#¥%……¥¥@#¥……¥@】