转:http://book.2cto.com/201212/11763.html

文件描述字函数是流函数的初等函数,每一个流都与一个描述字相连。给定一个打开的文件描述字,可以用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()时就需要知道与流相连的文件描述字。

fdopen()和fileno()函数相关推荐

  1. fileno函数与ftruncate函数

    fileno()函数 功    能:把文件流指针转换成文件描述符 相关函数:open, fopen 表头文件:#include <stdio.h> 定义函数:int fileno(FILE ...

  2. 一.fileno()函数

    一.fileno()函数 功    能:把文件流指针转换成文件描述符 相关函数:open, fopen 表头文件:#include <stdio.h> 定义函数:int fileno(FI ...

  3. C语言之fileno()函数

    open函数相关的:  /* open 是系统调用 返回的是文件句柄*/ <span style="font-size:18px;">#include <sys/ ...

  4. C语言之fileno函数

    open函数相关接口(open 是系统调用 返回的是文件句柄): #include <sys/stat.h> #include <fcntl.h> int open(const ...

  5. 文件系统I/O缓冲-Linux

    文件I/O---->缓冲 文件IO的内核缓冲:缓冲区高速缓存 read()和write()系统调用在操作磁盘文件时不会直接发起磁盘访问,而是在用户缓冲区与内核缓冲区高速缓存之间复制数据 例如: ...

  6. 函数说明(fileno)

    fileno FILEHANDLE 这个函数返回在一个文件句柄下面的文件描述符.如果该文件句柄没有 open,那么 fileno 返回 undef.文件描述符是一个很小的,非负整数,比如 0 或 1, ...

  7. linux c语言内核函数手册,Linux C函数实例速查手册

    函数学习目录: 第1章 初级I/O函数 1.1 close函数:关闭已经打开的文件 1.2 creat函数:创建一个文件 1.3 dup函数:复制文件描述符 1.4 dup2函数:复制文件描述符到指定 ...

  8. C语言函数大全-- s 开头的函数(2)

    C语言函数大全 本篇介绍C语言函数大全-- s 开头的函数(2) 1. setlinestyle 1.1 函数说明 函数声明 函数功能 void setlinestyle( int linestyle ...

  9. linux文件操作(二)

    原文地址 http://blog.csdn.net/mylxiaoyi/archive/2008/03/23/2208347.aspx 标准I/O库 标准I/O库以及他的头文件,提供了一个到底层I/O ...

最新文章

  1. 基于运动信息的物体检测(背景差分法、帧间差分法和光流法)。
  2. 「小程序JAVA实战」微信开发者工具helloworld(三)
  3. -mkdir 创建目录 Usage:hdfs dfs -mkdir [-p] < paths> 选项:-p 很像Unix mkdir -p,沿路径创建父目录。
  4. Linux基金会宣布将为GraphQL成立基金会
  5. *27.硬实时和软实时
  6. 浅谈湖仓一体化对上层机器学习业务的促进
  7. QT之QHash简介
  8. 软件测试白皮书-等价类
  9. 解决读写分离过期读的几个方案
  10. 新版微信不停跳转到小程序_如何设置跳转微信小程序
  11. SQL存储过程跨服务器访问
  12. 你的Node环境有问题?这篇文章可以帮到你!
  13. 一个普通java程序员的10年...泪奔 o(╥﹏╥)o o(╥﹏╥)o
  14. Windows 11旗舰版
  15. 芝诺数解|「八」旅途中的“家”——重庆酒店特征分析
  16. 简练软考知识点整理-组建项目团队
  17. 前端传值,后端使用Map接受
  18. python读取.tsv文件例子(大文件处理)
  19. 用js实现网页中小广告弹出
  20. 杂乱身份证整理之终极大法

热门文章

  1. NightWatchMan
  2. fastjson的@JSONField注解
  3. 洛谷P1352 没有上司的舞会(树形DP水题)
  4. 老李推荐: 第8章4节《MonkeyRunner源码剖析》MonkeyRunner启动运行过程-启动AndroidDebugBridge 2...
  5. IOS线程学习(一)
  6. CheckBox in ListView
  7. DB2数据库性能调整和优化(第2版)
  8. H.264编码profile level控制
  9. ubuntu16.04装MatConvNet
  10. HTML5 浏览器支持(怎么样让低版本浏览器支持html5?)