5.2 标准I/O库_流和FILE对象
来源:互联网 发布:mac液体唇膏 黄皮 编辑:程序博客网 时间:2024/05/24 07:38
在第3章中,所有I/O函数都是针对文件描述符的。而对于标准I/O库,它们的操作则是围绕流进行的。当用标准I/O库打开或创建一个文件时,我们已使一个流与一个文件相关联。
对于ASCII字符集,一个字符用一个字节表示。对于国际字符集,一个字符可用多个字节表示。标准I/O文件流可用于单字节或多字节(“宽”)字符集。流的定向决定了所读、写的字符是单字节还是多字节的。当一个流最初被创建时,它并没有定向。如若在未定向的流上使用一个多字节I/O函数,则将该流的定向设置为宽定向的。若在为定向的流上使用一个单字节I/O函数,则将该流的定向设置为字节定向的。只有两个函数可以改变流的定向。freopen函数清除一个流的定向;fwide函数设置流的定向。
- #include <stdio.h>
- #include <wchar.h>
- int fwide(FILE *fp, int mode);
返回值:若流是宽定向的则返回正值,若流是字节定向的则返回负值,若流是未定向的则返回0
根据蓦地参数的不同值,fwide函数执行不同的工作:
- mode为负,fwide试图使指定的流是字节定向的。
- mode为正,fwide试图使指定的流是宽定向的。
- mode为0,fwide不试图设置流的定向,但返回标识该流定向的值。
注意,fwide并不改变已定向流的定向。还有,fwide无出错返回。
FILE对象通常是一个结构,它包含了标准I/O库为管理该流所需要的所有信息,包括:用于实际I/O的文件描述符、指向用于该流缓冲区的指针、缓冲区的长度、当前在缓冲区中的字符数以及出错标志等等。称指向FILE对象的指针(类型为FILE *)为文件指针。
- 5.2 标准I/O库_流和FILE对象
- 标准I/O流和FILE对象常用函数
- 5.6 标准I/O库_读和写流
- 5.3 标准I/O库_标准输入、标准输出和标准出错
- 5.7 标准I/O库_每次一行I/O
- 5.9 标准I/O库_二进制I/O
- 5.11 标准I/O库_格式化I/O
- 5.5 标准I/O库_打开流
- 5.10 标准I/O库_定位流
- 5.4 标准I/O库_缓冲
- 5.13 标准I/O库_临时文件
- C语言_标准I/O库
- File和I/o流
- Linux下 标准I/O库的FILE对象结构体定义
- File和I/O
- 标准C库和unbuffered I/O
- 5.12 标准I/O库_实现细节
- 文件操作之2_标准I/O库
- loadrunner 录制上传文件脚本时缺少了几个字符
- IFC学习笔记一
- 8 Amazing Javascript Experiments of Physic and Gravity Simulation
- hdu 2098
- 两大主流Web服务器之分析与对比
- 5.2 标准I/O库_流和FILE对象
- 查询指定的上一条或者下一条信息
- 提高代码执行效率,注意编程小细节
- vc6轮询mysql,检查信息过期,使用系统线程池,可慢,求高人指点
- ioctl操作
- 数据库锁表的分析与解决
- 2010驾驶员模拟考试易错易混题大全
- 前台调用后台控件
- 5.3 标准I/O库_标准输入、标准输出和标准出错