C库文件操作函数

标准库中的函数,类型以及宏在下面的标准头文件中定义:

成都创新互联公司秉承实现全网价值营销的理念,以专业定制企业官网,网站设计制作、网站设计微信平台小程序开发,网页设计制作,成都做手机网站成都全网营销推广帮助传统企业实现“互联网+”转型升级专业定制企业官网,公司注重人才、技术和管理,汇聚了一批优秀的互联网技术人才,对客户都以感恩的心态奉献自己的专业和所长。

:

该头文件中定义的输入和输出函数、类型以及宏的数目几乎占整个标准库的三分之一。

流:是与磁盘或其它外围设备关联的数据的源或目的地。

文本流:由文本行组成的序列,每一个行包含0个或多个字符,并以‘\n’结尾。

二进制流:由未经过处理的字节构成的序列。

程序开始执行时,stdin、stdout和stderr这三个流已经处于打开状态。

FILE* fopen(const char* filename, const char* mode)

此函数打开filename指定的文件,并返回一个与之相关联的流,打开失败返回NULL;

访问模式(mode):

“r”:以读方式打开文本文件。

“w”:以写方式打开文件文本。

“a”:追加;打开或者新建一个文本文件,并向文件末尾追加内容。

“r+”:打开文本文件用于更新(读和写)。

“w+”:打开或者新建文本文件用于更新,并删除原有内容。

“a+”:追加:打开或者新建文本文件用于更新,并向末尾追加内容。

后面三种方式可以对同一个文件操作,但在读和写的交叉过程中,必须调用fflush函数

或者文件定位函数。

FILE* freopen(cosnt char* filename, const char* mode,FILE* stream)

此函数指定模式打开文件,并将文件关联到指定的流,返回stream;出错返回NULL;一般用于改变与stdin、stdout和stderr相关的文件。

int fflush(FILE* stream)

对输出流来说,fflush函数将已写到缓存区但没有写入文件的所有数据写入文件。失败返回EOF否则返回0.fflush(NULL)将清洗所有的输出流。

int fclose(FILE* stream)

将所有没写入的数据写入stream,丢弃缓存区的所有未读输入数据,并释放自动分配的缓存区,最后关闭流;出错返回EOF,否则返回0。

int remove(const char* filename)

删除指定的文件,删除失败返回一个非0值。

int rename(const char* oldname, const char* newname)

修改文件的名称,失败返回非0值。

FILE* tmpfile(void)

该函数以“w+b”模式新建一个临时文件,程序结束时,自动删除;创建成功返回一个流,失败返回NULL。

int setvbuf(FILE* stream, char* buf,int mode, size_t size)

该函数控制流的缓冲;在执行读、写以及其他任何操作之前必须调用此函数。当模式的值为_IOFBF时,将进行完全缓冲;模式为IOLBF时,将对文件进行缓冲;当模式为_IONBF时表示不缓冲,表示不设置缓冲。如果buf的值不是NULL,则函数将buf指向的区域作为流的缓冲区,否则将分配一个缓冲区,size表示缓冲区的长度。函数操作失败,返回一个非0值。

void setbuf(FILE* stream, char* buf)

如果buf为NULL,则关闭流的缓冲;否则setbuf函数等价于

(void)setvbuf(stream, buf,_IOFBF, BUFSIZ).


网站栏目:C库文件操作函数
文章链接:http://scyanting.com/article/phdcjh.html