8. linux下错误的捕获:errno和strerror的使用

本文深入探讨了Linux环境下错误处理的关键概念,包括如何利用errno全局变量捕捉错误,以及strerror系列函数如何将错误代码转换为易于理解的错误描述。详细介绍了errno的用途、strerror函数的作用、函数原型、参数以及返回值。

8.  linux下错误的捕获:errno和strerror的使用

经常在调用linux 系统api 的时候会出现一些错误,比方说使用open() write() creat()之类的函数有些时候会返回-1,也就是调用失败,这个时候往往需要知道失败的原因。这个时候使用errno这个全局变量就相当有用了。

    在程序代码中包含 #include <errno.h>,然后每次程序调用失败的时候,系统会自动用用错误代码填充errno这个全局变量,这样你只需要读errno这个全局变量就可以获得失败原因了。

Strerror

1函数名strerror, _strerror, _wcserror, __wcserror

2函数作用Get a system error message (strerror, _wcserror) or prints auser-supplied error message (_strerror, __wcserror).

获取系统错误信息或打印用户程序错误信息。

功能:通过标准错误的标号,获得错误的描述字符串。

头文件#include<string.h>

4函数原型char *strerror( int errnum);

char *_strerror(const char *strErrMsg);

wchar_t * _wcserror(int errnum);

wchar_t * __wcserror(const wchar_t*strErrMsg);

参数:

errnum:错误标号,通常用errno(标准错误号,定义在errno.h中)

Error number.

strErrMsg

User-supplied message.

返回:

指向错误信息的指针(即:错误的描述字符串)。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值