C 关于错误 errno stderr perror stderror strerror

1)errno表示错误代码。 记录系统的最后一次错误代码。代码是一个int型的值,在errno.h中定义;

2)stderr是linux(unix)标准出错输出。是不带缓冲的,这使得出错信息可以直接尽快地显示出来。
linux中的一个进程启动时,都会打开三个文件:标准输入、标准输出和标准出错处理。
通常这三个文件都与终端联系。这三个文件分别对应文件描述符0、1、2。
系队统自定义了三个文件指针stdin、stdout、stderr,分别指向标准输入、标准输出和标准出错输出。
通常结合fprintf使用:fprintf(stderr,"error message")。

eg.

fprintf(stdout,"Hello "); // 有缓冲  
fprintf(stderr,"World!");  //无缓冲

输出:world!Hello

3)perror是错误输出函数,在标准输出设备上输出一个错误信息。
是对errno的封装。例如perror("fun"),其输出为:fun:后面跟着错误信息(加一个换行符)。包含头文件stdio.h.

4)stderror是通过参数errno,返回错误信息。
 即stderror(errno),可用printf函数打印出错信息,用于调试。包含头文件string.h。

5)strerror返回errno当前错误的字符串,strerror(errno)就是把错误信息转化问字符串。
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值