3.5 fdopen()和fileno()函数 http://book.2cto.com/201212/11763.html
2015-09-16 19:42
621 查看
文件描述字函数是流函数的初等函数,每一个流都与一个描述字相连。给定一个打开的文件描述字,可以用fdopen()函数为它创建一个流。反过来,已知一个流,也可以用fileno()函数得到它的文件描述字。
#include <stdio.h>
FILE *fdopen (int filedes, const char * opentype);
int fileno (file * stream);
fdopen()使描述字filedes与一个流相连。它的返回值是一个新的流,如果不能创建此流,则返回空指针。
参数opentype的取值与fopen()的opentype参数完全相同,但“w”和“w+”不导致文件截断,因为截断是文件打开时的动作,而在此情形下,文件已经被打开。注意,调用fdopen()时必须保证opentype参数与打开文件描述字时使用的opentype参数一致。
fdopen()建立的新流的文件位置与描述字filedes的文件位置相同,且流的错误指示器和文件结束指示器均被清除。fdopen()的实质是为已打开的文件描述字提供标准I/O缓冲。
fileno()函数返回与流stream相连的文件描述字。利用它可以确定流的底层文件描述字。例如,当调用dup()或fcntl()时就需要知道与流相连的文件描述字。
#include <stdio.h>
FILE *fdopen (int filedes, const char * opentype);
int fileno (file * stream);
fdopen()使描述字filedes与一个流相连。它的返回值是一个新的流,如果不能创建此流,则返回空指针。
参数opentype的取值与fopen()的opentype参数完全相同,但“w”和“w+”不导致文件截断,因为截断是文件打开时的动作,而在此情形下,文件已经被打开。注意,调用fdopen()时必须保证opentype参数与打开文件描述字时使用的opentype参数一致。
fdopen()建立的新流的文件位置与描述字filedes的文件位置相同,且流的错误指示器和文件结束指示器均被清除。fdopen()的实质是为已打开的文件描述字提供标准I/O缓冲。
fileno()函数返回与流stream相连的文件描述字。利用它可以确定流的底层文件描述字。例如,当调用dup()或fcntl()时就需要知道与流相连的文件描述字。
相关文章推荐
- 网络七层架构
- 网络七层架构
- dup和dup2函数 http://www.cnblogs.com/svking/archive/2012/08/10/dup.html
- 转 Wireshark和TcpDump抓包分析心得
- 转载:Chrome 中的 JavaScript 断点设置和调试技巧 http://han.guokai.blog.163.com/blog/static/136718271201321402514114/
- 比较好的方式管理我们的应用判断,比如Activity跳转,网络是否连接,判断json....
- Android监听网络状态
- tcp加速技术
- Android网络图片加载缓存处理库的使用---第三方库学习笔记(五)
- Android网络图片加载缓存处理库的使用---第三方库学习笔记(五)
- Linux 网络配置
- 安卓框架——Android-async-http使用
- TCP/IP 教程(针对LINUX的网络基础请参看 《鸟哥的Linux私房菜 服务器架设篇(第三版) 》)
- 《炉石传说》架构设计赏析(7):使用Google.ProtocolBuffers处理网络消息
- VMware下linux网络配置
- Annotation(jdk5.0注解)复习(转自http://3w_cnblogs_com/pepcod/)
- 《网络编程》ioctl 操作
- 很有用的函数http_build_query
- NAT打洞(udp打洞和tcp打洞)
- 网络安全笔记