linux c 打印错误信息error errno perror和strerror的区别
1 perror
头文件:stdio.h
void perror(const char *msg);
它是基于errno的当前值,在标准错上产生一条出错信息,然后返回。
它先输出由msg字符串,然后是一个冒号后头接着对应于errno值的出错信息。
例: perror("sendto");
打印出:sendto: Permission denied
2 strerror
头文件:string.h
char * strerror(int errnum);
此函数将errnum(它通常就说errno值)映射为一个出错信息字符串,并返回错误此字符串
我们看errno的值:
在头文件: include errno.h
例:
printf("errno is: %d\n", errno);
printf("errno is: %s\n", strerror(errno));
结果:errno is 13
Permission denied
3 perror和strerror区别和联系
可以看出:
perror和strerror都是根据errno的值打印错误信息的。
perror是将errno对应的错误消息的字符串打印到标准错误输出上,即stderr或2上,若你的程序将标准错误输出重定向到/dev/null,那就看不到了,就不能用perror了。
而 strerror的作用只是将errno对应的错误消息字符串返回.你可以自己决定咋样处理字符串,比如可以存到日志,也可以直接printf出来。
linux c 打印错误信息error errno perror和strerror的区别相关推荐
- python学习(五)--打印错误信息
from urllib import request #打印错误信息 except Exceptionlist = [ "http://www.baidu11.com/", &qu ...
- 标准C库函数之perror()、strerror(),以及他们之间各种的优缺点(打印错误信息)
前言 如果,想要深入的学习标准C库中perror.strerror函数,还是需要去自己阅读Linux系统中的帮助文档. 具体输入命令: man 3 perror man 3 strerror 即可查阅 ...
- 【原】iOS学习之Xcode8关于控制台不打印错误信息
前几天将我的Xcode升到了8,但是在运行程序时,会打印很多没有用的信息,如下图: Xcode8运行程序时打印的乱码 于是各种寻求答案,找到如下答案: Edit Scheme-> Run -&g ...
- ajax 错误信息error,jquery ajax的error错误信息
项目开发中ajax的异常处理起来算是比较头疼的,因为是异步请求,所以即使ajax异常程序依然会继续执行,导致找ajax的异常比较麻烦. 今天处理ajax异常时搜到一篇文章,提到error可以返回aja ...
- 为什么玩我的世界老提示Java se错误_我的世界error错误信息 error could解决方法
我的世界是一个及其开放的沙盒游戏,而在这个游戏中有不少的问题,比如说遇到error该如何解决呢,看小编给大家带来的我的世界error错误的解决方法,希望大家喜欢. error应用程序错误信息.包括&q ...
- linux输出和错误信息文件,Log4j配置将错误信息输出到指定文件中[linux tomcat]
在使用log4j的时候,我们常常需要将错误信息输出到指定路径的文件中 以便于以后查询出错信息 在网上搜了很多资料都是写的windows下的输出方法,而且很多都是不负责任的直接E:// 很多时候我们希望 ...
- javascript 打印错误信息 catch err
使用 console.log(err); 是无法打印出来的.默认只能打印出错误信息.如图 http.interceptors.response.use(response => {return r ...
- 错误信息 Error executing DDL via JDBC Statement 解决办法
二月 27, 2018 10:34:44 上午 org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl handleExceptio ...
- linux屏蔽开机错误信息,arch linux 开机错误信息还有fcitx输入法问题,求解决!问题如下:...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 系统arch 1,开机错误信息: [ 11.807327] [drm:intel_set_pch_fifo_underrun_reporting [i91 ...
最新文章
- 转换字符串中汉字为其拼音缩写(C#)
- 实体链接:信息抽取中的NLP的基础任务
- Java生成CRC16数据校验码
- Gitlab自动触发Jenkins构建打包
- HTML5中的时间类型,另外EL表达式的时间值来读取时间,并且还可以更改时间
- Red5开发第一步-Hello World
- C# MD5 加密算法
- linux的man命令功能,Linux中的MAN命令
- JAVA权重算法(如Dubbo的负载均衡权重)
- `Caché/IRIS` 代码优化效率提升十一条 - 持续更新
- 限流是解决高并发大流量的一种方案,至少是可以保证应用的可用性
- 服装ERP应用(12)-某公司的服装(鞋业)ERP解决方案
- PHPstudy的下载与安装。
- 数码摄影入门:焦距是什么?
- linux oracle开启监听服务器,linux服务器启动oracle监听端口
- 计算机视觉——基于sift算法的地理信息图像匹配
- 2020.4.29华为笔试【华为校园招聘 软件】
- MD5及公私钥数据加密工具类
- 详细解读petalinux的配置
- 阿里云服务器新用户优惠
热门文章
- Kingdee v7.0账套修复
- 设计模式——外观模式
- 京东架构师解析URL监控
- keystonejs富文本问题及思考过程
- EasyTouch中多种QuickGesture手势检测
- 让您的开机时间和打开网页速度如飞一样
- 安卓APP动态调试-IDA实用攻略
- 未启用当前数据库的 SQL Server Service Broker,因此查询通知不受支持。如果希望使用通知,请为此数据库启用 Service Broker...
- [译]ElasticSearch数据类型--string类型已死, 字符串数据永生
- ubuntu安装迅雷软件