头文件:#include <unistd.h>
返回:执行成功,返回实际写入文件中的字节数,写入字节数又分三种情况:全写入、部分写入及0个写入;
执行出错,返回-1。
参数:
fd:函数描述符
buf:写入文件的数据所在的首地址,这里可以是字符串或者是数组名或指针
count:写入数据的大小
(6)lseek函数
函数的作用:对文件进行定位
函数的原型:int lseek(int fd,offset_t offset,int whence);
头文件:#include <sys/types.h>
#include <unistd.h>
返回:执行成功,返回文件当前指针到文件头之间的字节数;
执行出错,返回-1。
参数:
fd:文件描述符
whence:指针的位置
① SEEK_SET:将文件指针放在文件首
③ SEEK_END:将文件指针放在文件末尾
获取文件的大小可以将文件指针放在文件末尾即可。
四、带缓存的文件I/O操作的相关函数
1、不带缓存(系统调用)的I/O操作是对文件描述符操作,带缓存(标准I/O库函数)的I/O操作是针对流,带缓存的目的是尽可能地减少使用read()和write()调用的次数。fscanf函数用法
2、相关函数
(1)fopen函数
函数的作用:打开文件
函数的原型:FILE *fopen(const char *path,const char *mode);
头文件:#include <stdio.h>
返回:执行成功,返回指向该流的文件的指针;执行出错,返回NULL
参数:
path:欲打开的文件路径或文件名(字符串形式)
mode:流形态:
① r:打开只读文件,文件必须存在
② r:打开可读写文件,文件必须存在
③ w:打开只写文件,文件若不存在则创建该文件,文件若存在则清空文件内容
④ w:打开可读写文件,文件若不存在则创建该文件,文件若存在则清空文件内容
⑤ a:以附加方式打开只写文件,若文件不存在则创建该文件,文件若存在写入的数据从原来的文件尾加入
⑥ a:以附加方式打开可读写文件,若文件不存在则创建该文件,文件若存在写入的数据从原来的文件尾加入
(2)fputc函数
函数的作用:将一个指定的字符写入到参数stream指定的文件中
函数的原型:int fputc(int c,FILE *stream);
头文件:#include <stdio.h>
返回:执行成功,返回写入的字符即参数c;执行出错,返回EOF
参数:
c:欲写入的字符
stream:文件流中已打开的文件指针
(3)fgetc函数
函数的作用:从stream指定的文件中读取一个字符
函数的原型:int fgetc(FILE *stream);
头文件:#include <stdio.h>
返回:执行成功,返回读取到的字符;返回EOF表示到了文件的末尾
参数:
stream:文件流中已打开的文件指针

(4)fputs函数
函数的作用:将一个字符串写入到stream指定的文件中
函数的原型:int fputs(const char *s,FILE *stream);
头文件:#include <stdio.h>
返回:执行成功,返回写入文件的字符个数;执行出错,返回EOF
参数:
s:写入的字符串
stream:文件流中已打开的文件指针
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/jisuanjixue/article-30196-2.html
我也要去追求去了哈哈
所以麻麻一把年纪还纯真的喜欢你@TFBOYS-易烊千玺呀