目录
一、标准流和错误处理
1.重定向
由于标准输出和标准错误输出通常都是直接打印到屏幕上,为了区分它们,我们可以使用Linux shell的重定向功能:
2.标准流
3.错误处理
每个流对象的内部都有两个指示器:一个是文件结束指示器,当遇到文件尾时,该指示器被点亮;另一个是错误指示器,当读写文件出错时,该指示器被设置。
- 错误指示器——ferror
- 使用clearerr函数可以人为地清除文件末尾指示器和错误指示器的状态。
- ferror函数只能检测是否出错,但无法获取错误原因。不过,大多数系统函数在出现错误的时候会将错误原因记录在errno中。
- perror函数可以直观地打印出错误原因。
- strerror函数直接返回错误码对应的错误信息。
二、IO缓冲区
1.IO缓冲区
- 标准IO提供了三种类型的缓冲模式:① 按块缓存;② 按行缓存;③ 不缓存
- 按块缓存也称为全缓存,即在填满缓冲区后才进行实际的设备读写操作;按行缓存是指在接收到换行符('\n’)之前,数据都是先缓存在缓冲区的;不缓存,也就是允许直接读写设备上的数据。
2.setvbuf
原文地址:https://www.jb51.cc/wenti/3287919.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。