【CC++语言入门篇】-- 文件操作(二)

2014-11-24 13:09:01 · 作者: · 浏览: 7
// the handle was closed). also, free up the heap
// block holding the pathname.
};
typedef struct _iobuf FILE;

好了,上面的结构体就是这样定义的。这里不得不再次提到缓冲:

缓冲模式
常量(mode)
备注

无缓冲模式
_IONBF
该文件不使用任何缓冲,也可以说是字节缓冲

只能保存一个字节。

行缓冲模式
_IOLBF
仅对文本模式打开的文件有效,所谓行,即是指每收到一个换行符( 或 ),就将缓冲flush掉

全缓冲模式
_IOFBF
仅当缓冲满时才进行flush


上面结构体中的_flag就标记了缓冲的信息(我们关心这三个):

#define _IOYOURBUF 0x0100 // 使用用户通过setbuf提供的buffer

#define _IOMYBUF 0x0008 //