c语言中的errno用法

越来越感觉到c语言的短小精悍。有一次要调试一个代码,直接从ftp上下载下来,打开vs就开始调试。无论怎么调试就是不对,单步运行定位错误到一个打开文件的函数。原来是文件没有打开。但是没有具体的错误信息,调试一下子陷入了僵局。记得以前用MFC的时候里面有个函数叫做GetLastError(),可以获取最后出错的原因,如果c语言有就好了。上网搜索了一下果然有这个东西,就叫做errno。errno是定义...
摘要由CSDN通过智能技术生成

越来越感觉到c语言的短小精悍。

有一次要调试一个代码,直接从ftp上下载下来,打开vs就开始调试。无论怎么调试就是不对,单步运行定位错误到一个打开文件的函数。原来是文件没有打开。但是没有具体的错误信息,调试一下子陷入了僵局。记得以前用MFC的时候里面有个函数叫做GetLastError(),可以获取最后出错的原因,如果c语言有就好了。上网搜索了一下果然有这个东西,就叫做errno。errno是定义"error.h"里的错误码,“error.h”定义了一系列的宏来表示相应的错误信息,通过检查errono再在“erro.h”里面查找就能找到相应的出错信息。

from wikipedia:

errno.h 是C语言C标准库里的头文件,定义了通过错误码来回报错误信息的宏:

errno宏定义为一个int型态的左值, 包含任何函数使用errno功能所产生的上一个错误码。
一些表示错误码,定义为整数值的宏:
EDOM 源自于函数的参数超出范围,例如sqrt(-1)
ERANGE 源自于函数的结果超出范围,例如strtol(“0xfffffffff”,NULL,0)
EILSEQ 源自于不合法的字符顺序,例如wcstombs(str, L"\xffff", 2)
但是一个一个手工查找毕竟麻烦,还好标准库为我们提供了一些函数。

复制代码
1 void perror( const char string );//Print an error message.<stdio.h> or <stdlib.h>
2 //msdn 示例代码
3 /
PERROR.C: This program attempts to open a file named
4 * NOSUCHF.ILE. Because this file probably

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值