1 流

        当一个文件被打开时,可以获得文件描述符。通过文件描述符可以对文件进行I/O操作。而I/O操作是通过流完成的。
流的定向:
        在Unix系统中,使用 ASCII标准时,一个字符可能用一个字节表示,这是流导向为字节导向;使用国际标准时,一个字节可能用两个字节表示,这是流定向为宽字符定向。

2 fwide

#include <stdio.h>
#include <wchar.h>
int fwide(FILE *fp,intmode);
功能:
        设置流定向
参数:
        fp:打开的文件描述符
        intmode:带符号的int值,
            正数:表示宽字符定向
            负数:表示字节定向
            0: 
  表示不进行定向设置
返回值:
        流的定向,与intmode类似。

3 文件对象File object

        使用fopen打开文件时,会创建一个指向FILE型的的文件对象的指针。
        FILE对象几乎包括所有对文件的I/O操作所需要的信息。

APUE学习笔记——5.2流与文件对象、fwide的更多相关文章

  1. java学习笔记16--I/O流和文件

    本文地址:http://www.cnblogs.com/archimedes/p/java-study-note16.html,转载请注明源地址. IO(Input  Output)流 IO流用来处理 ...

  2. apue学习笔记(第三章 文件I/O)

    本章开始讨论UNIX系统,先说明可用的文件I/O函数---打开文件.读写文件等 UNIX系统中的大多数文件I/O只需用到5个函数:open.read.write.lseek以及close open函数 ...

  3. apue学习笔记(第四章 文件和目录)

    本章将描述文件系统的其他特性和文件的性质. 函数stat.fstat.fstatat和lstat #include <sys/stat.h> int stat(const char *re ...

  4. APUE学习笔记3_文件IO

    APUE学习笔记3_文件IO Unix中的文件IO函数主要包括以下几个:open().read().write().lseek().close()等.这类I/O函数也被称为不带缓冲的I/O,标准I/O ...

  5. APUE学习笔记——10.9 信号发送函数kill、 raise、alarm、pause

    转载注明出处:Windeal学习笔记 kil和raise kill()用来向进程或进程组发送信号 raise()用来向自身进程发送信号. #include <signal.h> int k ...

  6. Java NIO 学习笔记(六)----异步文件通道 AsynchronousFileChannel

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  7. APUE学习笔记——5缓冲Buffering、流、文件对象

    缓冲的几个基本概念     缓冲的作用:减少系统read和write的次数. 全缓冲         系统标准I/O缓冲区被写满时才进行真正的I/O操作.         磁盘文件一般使用全缓冲   ...

  8. android学习笔记36——使用原始XML文件

    XML文件 android中使用XML文件,需要开发者手动创建res/xml文件夹. 实例如下: book.xml==> <?xml version="1.0" enc ...

  9. Linux学习笔记14——使用fcntl实现文件锁定

    期末考试快要来了,Linux学习进度一下拉下来许多.今天学习的是文件锁定,在Linux中,实现文件锁定的方法很多,例如fcntl和lockf.下面主要是fcntl的调用. fcntl函数的原型是:in ...

随机推荐

  1. LVM2逻辑卷创建及扩容

    LVM是Logical Volume Manager(逻辑卷管理器)的简写,又译为逻辑卷宗管理器.逻辑扇区管理器.逻辑磁盘管理器.是Linux核心所提供的逻辑卷管理(Logical Volume Ma ...

  2. AVAudioSession(1):iOS Audio Session 概览

    本文转自:AVAudioSession(1):iOS Audio Session 概览 | www.samirchen.com 本文内容主要来源于 Audio Session Programming ...

  3. Android模拟器Intel Atom下载安装配置

    https://software.intel.com 在Android x86模拟器Intel Atom x86 System Image时提示Intel execute disable bit(xd ...

  4. MVC 中的家常事

    对于@后面变量加上括号解决异意的方法 例如: hello@User.Name 会误判为电子邮箱,解决办法是括号,即hello@(User.Name) 使用@Html.Raw()输出后台到.cshtml ...

  5. MySQL 常用运算符

    1.算数运算符 加 mysql> select 1+2; 减 mysql> select 2-1; 乘 mysql> select 2*3; 除 mysql> select 5 ...

  6. MCM写作

    MCM 写作 引言的写作 对赛题的解读. 对现有研究成果的松树与评论 对解题思路和主要方法进行简介 引言第一句话是最重要的,应该激发读者阅读兴趣,应该浅显易懂,不用或者少用数学公式 赛题选定以后要首先 ...

  7. 从0开始 数据结构 AC自动机 模板(from kkke)

    AC自动机模板 2.4.1 头文件&宏&全局变量 #include <queue> #define MAXN 666666 #define MAXK 26//字符数量 st ...

  8. G - 锘爷考驾照

    2017-07-17 11:56:06 writer:pprp 题目描述 大家都知道,锘爷是XDUdp第一人,所以锘爷决定要去考驾照!(这很有逻辑吧),他为了一次考到驾照,于是买了一辆越野车从学校开回 ...

  9. 使用size_t注意边界

    C++中的 size_t 表示数组的下标,一般为: typedef unsigned size_t; 在学习中我们一般使用int表示下标,这样在循环中可以判断边界x>=0 或x<=0,比如 ...

  10. Kubernetes服务目录的设计

    [编者的话]OpenShift 3.6新版本包括新的服务目录和服务中介技术预演版.它们是基于Kubernetes的孵化项目Kubernetes Service Catalog project.服务目录 ...