调用此函数不需要传入 errno,函数内部会自己去获取 errno 变量的值,调用此函数会直接将错误提示字符 串打印出来,而不是返回字符串,除此之外还可以在输出的错误提示字符串之前加入自己的打印信息。
#include <stdio.h>
void perror(const char *s);

s:在错误提示字符串信息之前,可加入自己的打印信息,也可不加,不加则传入空字符串即可。
返回值:void 无返回值。

示例代码:

#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>
#include <stdio.h>int main(void)
{int fd;/* 打开文件 */fd = open("./test_file", O_RDONLY);if (-1 == fd){perror("open error");return -1;}close(fd);return 0;
}

编译及测试结果:

perror 函数打印出来的错误提示字符串是"No such file or directory","open error"便是我们附加的打印信息,而且从打印信息可知,perror 函数会在附加信息后面自动加入冒号和空格以区分。

一般在实际的编程中查看错误信息用的最多的就是这个函数。

Linux应用编程之perror函数相关推荐

  1. linux读取文件修改时间函数,Linux服务器编程之utime()函数修改文件存取时间

    Linux服务器编程之utime()函数修改文件存取时间 C语言utime()函数:修改文件的存取时间和更改时间 头文件: #include #include 定义函数: int utime(cons ...

  2. linux ioctl网络参数设置,Linux 网络编程之ioctl函数

    1.介绍 Linux网络程序与内核交互的方法是通过ioctl来实现的,ioctl与网络协议栈进行交互,可得到网络接口的信息,网卡设备的映射属性和配置网络接口.并且还能够查看,修改,删除ARP高速缓存的 ...

  3. Linux 应用编程之stat 函数

    Linux 下可以使用 stat 命令查看文件的属性,其实这个命令内部就是通过调用 stat()函数来获取文件属性的,stat 函数是 Linux 中的系统调用,用于获取文件相关的信息.(可通过&qu ...

  4. Linux应用编程之dup函数和dup2函数

    在 Linux 系统中,open 返回得到的文件描述符 fd 可以进行复制,复制成功之后可以得到一个新文件描述符,使用新的文件描述符和旧的文件描述符都可以对文件进行 IO 操作,复制得到的文件描述符和 ...

  5. Linux 应用编程之strerror函数

    在 Linux 系统下对常见的错误做了一个编号,每一个编号都代表着每一种不同的错误类型,当函数执行发生错误的时候,操作系统会将这个错误所对应的编号赋值给 errno 变量,每一个进程(程序)都维护了自 ...

  6. linux网络编程之Listen函数参数介绍

    1.listen()函数介绍 listen函数使用主动连接套接口变为被连接套接口,使得一个进程可以接受其它进程的请求,从而成为一个服务器进程.在TCP服务器编程中listen函数把进程变为一个服务器, ...

  7. linux网络编程之setsockopt()函数来设置socket状态以及getsockopt函数只用总结

    1.setsockopt函数 头文件:#include <sys/types.h> #include <sys/socket.h>定义函数:int setsockopt(int ...

  8. linux编程之pthread_create函数

    linux编程之pthread_create函数UNIX环境创建线程函数, 具体格式: #include<pthread.h> int pthread_create(pthread_t * ...

  9. linux c编程之fcntl

    fcntl可实现对指定文件描述符的各种操作,其函数原型如下: int fcntl(int fd, int cmd, ... /* arg */ ); 其中,操作类型由cmd决定.cmd可取如下值: F ...

最新文章

  1. JQ加AJAX 加PHP实现网页登录功能
  2. Transformer新玩法登Nature子刊
  3. C++ Primer 5th笔记(chap 13 拷贝控制) 对象移动
  4. 关于ORM中只有XML没有映射实体的思考?期待大家的建议
  5. Python数据结构学习笔记——树和图
  6. shell命令之---sed
  7. MYSQL数据库时间字段INT,TIMESTAMP,DATETIME性能效率比较
  8. 各种分页存储过程 (转)
  9. 慎用Hyper-Threading Technology
  10. 2.4一元多项式的表示及相加
  11. EntityFramework实体默认值遇到Oracle自增主键
  12. 动态代理:jdk和cglib区别
  13. [转载]百分之百自动登录2345王牌技术员联盟源代码(delphi)
  14. 7. HTTP 请求,响应
  15. Python_命名空间和作用域_25
  16. 基于STM32F429,Cubemx的SAI音频播放实验
  17. 游戏程序员的2013年终总结
  18. CorelDRAW X8窗口提示非法软件禁用解决方法最新教程分享
  19. 法国蓬皮杜中心天猫官方旗舰店开业;洲际集团旗下高端品牌voco全球开业及签约酒店数突破100家 | 美通企业日报...
  20. 让谷歌浏览器不再显示不安全内容的提示

热门文章

  1. gdb 如何调用函数?
  2. ESLint vs Prettier
  3. Nonbsp;architecturesnbsp;toamp;nb…
  4. 粉末冶金技术与新材料
  5. Sublime3 安装激活教程
  6. dfs bfs 完全没这概念啊 QAQ 咋这么抽象咩 快去找大佬学习哇哇哇~~
  7. 学习python-day01-01---转自Python分布式爬虫打造搜索引擎Scrapy精讲
  8. 【Security】可信计算
  9. Android百度地图实现定位
  10. 如何自动触发点击事件