【Linux系统C编程】errno函数

一、errno是什么?

errno是linux系统编程提供的全局整型变量,存储系统提供的api函数最后一次出错的错误码

  • 错误码宏定义在/usr/include/asm-generic/目录下的 errno-base.h 和 errno.h文件,这两个文件分别存储1-34,35-132的错误码宏定义
  • api函数执行错误时,更新errno值;api函数执行成功,errno值不变
  • linux系统api函数总结
  • 对应Windows系统的GetLastError(返回线程中调用api函数的错误)和WSAGetLastError(返回Windows socket api函数执行错误)

二、errno有什么作用?

调试代码,输出errno值,查看api函数的执行错误(只在函数执行错误时修改errno值,较难定位,可以在需定位的范围内,先置errno为0)

三、errno怎么用?

  • perror(打印函数)

头文件:#include<stdio.h>
原型:void perror(const char *s);
用法:perror(“abc”);->打印->abc:错误码对应的具体内容(如no such file or directory)

  • strerror

头文件:#include<string.h>
原型:char *strerror(int errnum);
用法:printf(strerror(errno));->打印->错误码对应的具体内容(如no such file or directory)

  • 若使用errno变量,加头文件#include<errno.h>(该头文件加了头文件#include<errno-base.h>)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值