一般当函数错误时,我们会选择打印errno,但实际打印出的errno是一个数字,还需要查手册进一步分析出错原因;我们可以使用两个函数直接打印出错误信息,便于分析

perror,头文件为stdio.h

strerror,头文件为sting.h

函数原型:

void perror(const char *s)

char *strerror(int errnum)

举例当使用fopen时:

FILE *fd = fopen("/usr/cdn","r");

if (fd == NULL)

{

fprintf(stderr,"fopen failed ,errno is %d", errno);

perror("fopen()")

fprintf(stderr,"fopen: %s", strerror(errno));

}

当文件路径错误或文件不存在时,打印错误信息:

【关于打印errno]相关推荐

  1. gdb打印errno显示cant find thread-local storage xxxx

    errno即最后一次错误的错误码,定义在<errno.h>里面,是一个宏 #if !defined _LIBC || defined _LIBC_REENTRANT /* When usi ...

  2. linux之errno值为104(connetction reset by peer)

    1 问题 往fd里面写(write方法)入数据的时候出错,返回小于等于0的值,然后这个时候打印errno值是104 2 分析 errno是104就是connetction reset by peer, ...

  3. Linux errno错误信息大全

    通常情况下,Linux平台开发过程中,总会遇到调用系统函数调用失败问题,为了更好地及时捕获错误信息,我们通常使用errno来捕获错误信息.需要注意的是,Linux系统调用的错误都存储在errno中,e ...

  4. Socket编程(C语言实现)——TCP协议(网络间通信AF_INET)的流式(SOCK_STREAM)+报式(SOCK_DGRAM)传输【多线程+循环监听】

    Socket编程 目前较为流行的网络编程模型是客户机/服务器通信模式 客户进程向服务器进程发出要求某种服务的请求,服务器进程响应该请求.如图所示,通常,一个服务器进程会同时为多个客户端进程服务,图中服 ...

  5. 02dayC语言数据类型

    一.数据类型 二.输入输出语句 例: scanf("%d",&a); printf("%d",a); 不同的数据类型有着其对应的格式化类型: 1.int ...

  6. printf()详解

    1.printf()简介 printf()是C语言标准库函数,用于将格式化后的字符串输出到标准输出.标准输出,即标准输出文件,对应终端的屏幕.printf()申明于头文件stdio.h. 函数原型: ...

  7. 【Linux系统编程学习】Linux系统IO函数(open、read、write、lseek)

    此为牛客网Linux C++课程1.20课程笔记. 1.open函数 open函数有两种,分别是打开一个已经存在的文件和创建并打开一个不存在的文件. #include <sys/types.h& ...

  8. c语言实现 windows socket_C语言实现Socket简单通信

    点击上方"学士科技",选择"设为星标" 资讯.技术干货第一时间送达! C语言基础合集,点我点我~~~ C语言进阶合集,点我点我~~~ C语言高级: 01.C语言 ...

  9. c99什么意思_C语言中%c,%s分别代表什么意思?

    www.mh456.com防采集. %c在C语言中代2113表字符5261型格式符. 输入输出的字符串标准类型.这是C语言的格式输出,%c,%s这些代表你要输出的数据的数据类型:%d 十进制有符号整数 ...

最新文章

  1. 20145222黄亚奇《Java程序设计》第1周学习总结
  2. The powerful Android Studio
  3. 【bzoj4939】【YNOI2016】掉进兔子洞(莫队)
  4. STM32 电机教程 33 - 无刷电机无感控制快速实现
  5. C++继承同名成员处理方式
  6. python 源代码 macd双底 高 低_MACD指标DIFF双底与双顶:买入与卖出
  7. 计算机毕业设计中用Java实现商场库存清单案例
  8. 按clear按钮清空两个文本框的内容,按copy按钮时将Source文本框的内容复制到Target文本框,按close按钮结束程序的运行
  9. C++输出倒三角加数字
  10. 【原】IOS合并lib(.a)库的终极可用方法(可用于解决duplicate symbol静态库冲突)
  11. PLOS_ONE_Genome-Wide Analysis of Long Noncoding RNA (lncRNA) Expression in Hepatoblastoma Tissues
  12. 【疑问】互联网公募基金的销售是繁荣,还是乱象?
  13. 学术界布局区块链,日本东京大学开始提供区块链课程
  14. CTF之做题总结(五)
  15. clodop控件使用
  16. CODESYS 控制虚拟单轴运动
  17. java for循环的写法_java中for循环的6种写法
  18. DNT tools 工具简介
  19. 【算法入坑】(一)双指针yyds,学完双指针刷题贼爽嘞
  20. 特征放缩(Feature scaling)

热门文章

  1. 【封神台】漏洞挖掘XXE wp
  2. 论文解读:《利用注意力机制提高DNA的N6-甲基腺嘌呤位点的鉴定》
  3. html超链接1003无标题,爱特漫画1003无标题
  4. 《MySQL知必会》第一章了解SQL
  5. 机械革命s1 pro ubunntu18.04 双系统 并配置nvidia驱动
  6. win10 只有一种语言且只有一种输入法的情况下,如何才能在打开新的窗口中默认英文输入
  7. [jzoj 6305] 最小值 {单调栈}
  8. 全球与中国回转窑市场深度研究分析报告
  9. CocoaPods安装出现的错误
  10. app版本更新 下载apk后没有跳转到安装页面