Strerror

通过标准错误的标号,获得错误的描述字符串 ,将单纯的错误标号转为字符串描述,方便用户查找错误。

需要引用的头文件
#include <errno.h>
#include <string.h>

用法:如果调用函数失败,会产生错误码,并把错误码存在errno这个变量中去,如果想知道错误的原因,调用strerror函数,把错误码设置为参数,strerror函数会返回一个char*型指针,打印这个指针,就是错误的信息。

下面请看例子

这里我们想打开一个test.txt的文件,且以读的形式打开

如果没有这个文件(这里是真没有),那么fopen函数就会返回一个NULL

我们来打印一个错误信息

错误信息告诉我们没有这个文件

以上就是对于strerror函数的介绍和使用

Perror

perror函数的功能和strerror函数很像。但它的功能更加直接。

头文件 #include< stdio.h >

perror函数可以自己拿到errno中的值,转换为错误信息,并且打印出来。

用法

打印结果

perror函数是先拿到错误码,转化为错误信息,然后将其打印出来(包括自定义信息)

总结

strerror函数

要把错误码设置为参数,然后函数会将错误码转化为错误信息(字符串),并返回这个字符串的首地址,要打印错误信息还需用到printf函数

perror函数

可以自行拿到错误码,并转化为错误信息,且打印出来(包含自定义信息)

Strerror函数和Perror函数的介绍及使用相关推荐

  1. erron变量、strerror函数 和 perror 函数

    文章目录 一.erron变量 二.strerror 函数 三.perror 函数 一.erron变量 在 Linux 系统下对常见的错误做了一个编号,每一个编号都代表着每一种不同的错误类型,当函数执行 ...

  2. 管道实现父子进程的信息传递(二)【标准流和其文件描述符、fwrite函数、perror函数】

    文章目录 代码实现 标准流 和 标准流文件描述符 代码中用到的函数 fwrite() perror() 在复习进程间的通信方式时又写了一遍,和 管道实现父子进程的信息传递(一)[fork函数.pipe ...

  3. C语言 | perror函数使用详解

    1024G 嵌入式资源大放送!包括但不限于C/C++.单片机.Linux等.关注微信公众号[嵌入式大杂烩],回复1024,即可免费获取! 我们大多都使用printf来打印一些信息,其它的接口都比较少用 ...

  4. 十一.字符串函数与内存函数

    目录 一.求字符串长度 二.长度不受限制的字符串函数 1.strcpy函数 2.strcat函数 3.strcmp函数 三.长度受限制的字符串函数 1.strncpy函数 2.strncat函数 3. ...

  5. perror()函数 strerror()函数 详解

    首先简单说一下file descriptors(文件描述符): file descriptor 0是standard input (stdin标准输入) file descriptor 1 是 sta ...

  6. linux下perror函数,Linux学习 之 perror函数,strerror函数,errno

    #include // void perror(const char *msg); #include // char *strerror(int errnum); #include //errno e ...

  7. linux下perror函数,Linux/Unix C编程之的perror函数,strerror函数,errno

    #include // void perror(const char *msg); #include // char *strerror(int errnum); #include //errno e ...

  8. 常见的字符函数与字符串函数介绍(1)

    常见的字符函数与字符串函数介绍 前言 C语言中对字符与字符串的处理很是频繁,但是C语言中并没有字符串类型的变量,字符串通常存放在常量字符串或者字符数组中.字符串常量适用于那些对它不做任何修改的字符串函 ...

  9. UNIX网络编程-listen函数及其包裹函数介绍

    UNIX网络编程-listen函数及其包裹函数介绍 函数简介 #include<sys/socket.h>int listen(int sockfd,int backlog);返回:若成功 ...

最新文章

  1. android Canvas 最基础知识总结
  2. SQL Server 数据库崩溃后的恢复之法
  3. CSP认证201803-1 跳一跳[C++题解]: 模拟
  4. jQuery获取URL的GET参数值
  5. centos6.x redhat6.x 升级openssh8.7
  6. Linux环境下Protobuf完整安装和使用教程
  7. oracle物理索引结构,oracle学习笔记(6)oracle物理结构--索引
  8. 程序设计导引(四)[终结篇]
  9. 出走的门徒之一——地平线 余凯:造物主的一小步
  10. .ppt和.pptx有什么区别
  11. 通信专业顶刊_通信类期刊排名
  12. 项目接入支付宝接口,验签出错
  13. 计算机编程学英语词汇,计算机编程常用英语词汇
  14. 掌上聊app v1.5.5
  15. html div 移除,js动态创建及移除div的方法
  16. 1416711-60-8,DBCO-PEG4-Hydroxyl,DBCO-PEG4-alcohol,DBCO-PEG4-OH含有DBCO部分和末端伯羟基的PEG连接剂
  17. 关于OpenHarmony蜂窝通信框架能力的说明
  18. 没有申报就对房屋进行装修可以吗?
  19. Java日历设计思路
  20. 数据化管理 - 洞悉零售及电商运营【初始】

热门文章

  1. Time For Kids 很不错的英语学习周刊
  2. mysql查询用户留存语法(用户留存和用户留存率问题)
  3. 人脸识别+深度学习,水平远超人类大脑!
  4. 冒泡排序python和C语言
  5. 动手吧,vue移动端悬浮球组件
  6. error: OpenCV(4.1.2) ..\modules\imgcodecs\src\loadsave.cpp:715: error: (-215:Assertion failed) !_img
  7. 全球云计算大会|TcaplusDB一举斩获优秀解决方案奖
  8. 第152章 SQL函数 $TSQL_NEWID
  9. 通过例子说明CMMI各级别不同
  10. 关于Python和自动化