Linux上的errno和strerror
部分内容参考:https://www.douban.com/note/165931644/
在Linux的api中:
errno 是记录系统的最后一次错误代码。代码是一个int型的值,在errno.h中定义。
在程序代码中包含 #include <errno.h>,然后每次程序调用失败的时候,系统会自动用用错误代码填充errno这个全局变量,这样你只需要读errno这个全局变量就可以获得失败原因了。
strerror可以通过标准错误的标号,获得错误的描述字符串 ,将单纯的错误标号转为字符串描述,方便用户查找错误。
需要引入 #include <string.h>
1 #include<stdio.h> 2 #include<string.h> 3 #include<errno.h> 4 #include<stdlib.h> 5 6 intmain(void) 7 { 8 FILE*fp; 9 externinterrno; 10 char*message; 11 if(NULL==(fp=fopen("/dev/dsp","r+"))) 12 { 13 printf("errno=%d\n",errno); 14 message=strerror(errno); 15 printf("Mesg:%s\n",message); 16 } 17 exit(0); 18 }19 输出: 20 error=2 21 Mesg:No such file or direcory
转载于:https://www.cnblogs.com/tshua/p/5730676.html
Linux上的errno和strerror相关推荐
- linux ping库函数,在Linux上用C++实现Ping
首先我们在terminal上使用ping命令并用wireshark软件抓包,看看实现ping命令需要那些协议,以及ping的数据包由那些内容构成. ping.png catch_ping.png 用w ...
- linux c 追加写文件内容,如何在C中追加到文件,在Linux上使用O_APPEND模式打开?
这是家庭作业的一部分.好吧,我的作业无法正常工作,所以我已经把一个片段拿出来并开始用它来弄清楚什么是错的. 在C语言的Linux上我试图打开/创建一个文本文件,给它写一些东西,关闭它,在读/写和追加模 ...
- linux malloc 线程,Linux上的侧线程的malloc/calloc崩溃
我正在用C写一个服务器 - 客户端应用程序,共享一些信息.服务器以双线程模式工作 - 主线程等待输入,而侧线程响应客户端的请求.客户端也是这样工作的,但它等待用户输入(来自stdin),并且如果它接收 ...
- 使用Epoll 在 Linux 上开发高性能应用服务器
epoll是Linux提供一种多路复用的技术,类似各个平台都支持的select,只是epoll在内核的实现做了更多地优化,可以支持比select更多的文件描述符,当然也支持 socket这种网络的文件 ...
- Linux上安装wkhtmltopdf,以及调试所遇到的问题
1.首先,去wkhtmltopdf下载对应版本的Linux版本,地址如下:https://wkhtmltopdf.org/downloads.html 2.这里我服务器是centos 7,所以下载一个 ...
- linux编译测试代码,rtc在linux上的测试代码
点击(此处)折叠或打开 rtc在linux上的测试代码 . rtc应用很广泛,在PC机和嵌入式上面几乎都能看到.下面就用最简单的代码做一个演示.相应的分析请看linux源代码中的分析文档.代码如下: ...
- linux文件描述符有什么用,linux上的文件描述符3有什么特别之处?
我的工作,那将在Linux和Mac OS X上运行的服务器应用程序它是这样的:linux上的文件描述符3有什么特别之处? 启动主要应用 控制器进程的叉 调用lock_down()在控制过程中 再次叉终 ...
- 推荐一款不错的嵌入式GUI(玲珑GUI)及在嵌入式linux上的移植
玲珑GUI介绍 玲珑GUI(LLGUI)是一套使用简单.低价的单片机GUI解决方案.可以用来代替串口屏.组态,降低产品成本,产品软硬件自主可控. 配套界面开发软件,图形化编辑界面,生成C代码. 如其名 ...
- 如何恢复 Linux 上删除的文件
转自:http://blog.csdn.net/chinalinuxzend/article/details/2591694 如何恢复 Linux 上删除的文件 来源:developerWorks 中 ...
- 如何恢复 Linux 上删除的文件:ext2
要想恢复误删除的文件,必须清楚数据在磁盘上究竟是如何存储的,以及如何定位并恢复数据.本文从数据恢复的角度,着重介绍了 ext2 文件系统中使用的一些基本概念和重要数据结构,并通过几个实例介绍了如何手工 ...
最新文章
- A16Z内部万字报告:人类与AI结合的最佳形态
- Django之orm补充
- 不用面部识别?亚马逊准备推出人手支付,0.3秒刷手支付
- 大白话5分钟带你走进人工智能-第二十六节决策树系列之Cart回归树及其参数(5)...
- vue3+TypeScript封装echarts5组件
- hive与hbase集成
- go语言var 和make_Var和语言设计
- IO_ADDRESS()的实现【转】
- ThinkPHP3(添加,修改,删除)
- Sql server安装时出现找不到vc_red.msi错误
- 为什么开源和企业用户是天生的盟友
- iptables学习笔记:使用NAT实现简单的无线AP
- 先有电脑然后才有手机,为什么当时手机不叫“手脑”呢?
- TIOBE 3 月编程语言排行榜:主流 Java、C++ 惨遭嫌弃,Python 势头迅猛
- 经济应用数学基础二 线性代数 (第四版) 赵树嫄 编| 中国人大版 课后习题答案
- ​手机APP应用软件开发
- mstar v56几路hdmi_TCL MStar常用升级方法图文教程
- 内网安全-域横向网络传输应用层隧道技术
- i3cpu驱动xp_Intel英特尔 Core i3/Core i5/Core i7系列CPU显示驱动 14.46.9.5394版 For XP-64
- 我学会了用计算机作文,我学会了作文(15篇)
热门文章
- vscode css智能补全_让你编码嗨到停不下来的8个VSCode插件
- PollingBlockTracker - encountered an error while attempting to update latest block:
- 以太坊 事务处理流程
- 诛仙服务器状态查询,《诛仙2》3月19日服务器数据互通公告
- matlab 算法转 c语言,matlab
- 唯一分解求正约数个数
- 批量更新 elasticsearch 内指定字段状态, 先查询后更新
- Beego 使用笔记
- Logstash5.X 日志搜集处理框架 安装配置
- 有关风向及风向处理的笔记