1、fflush
作用:
强制刷新某个流的缓存区。
头文件:stdio.h
函数原型:
int fflush(FILE *stream)
参数:
stream:传入想要操作的流。
函数返回值:
成功返回0,失败返回EOF(-1);
2、fprintf()
作用:
向指定流中输出内容
头文件:stdio.h
函数原型:
int fprintf(FILE *stream,const char *format,…)。
参数:
stream:传入想要输出的流。
函数返回值:
成功返回输出的字节数,失败返回negative value;
补充:sprintf()
函数原型:
int sprintf(char *str, const char *format, ...);
将内容输出到该地址中。
3、fopen()
作用
打开一个文件
头文件
#include<stdio.h>
函数原型
FILE *fopen(const char *pathname, const char *mode);
参数
pathname: 想要打开文件的路径,
mode:打开文件的模式。“+”:可读写,除了“a”以外都是从头开始写。
返回值:
成功返回打开文件的FILE*,失败返回NULL并设置错误号。
fopen 是 C 语言中用于打开文件的函数。当你想打开一个文件时,你需要指定一个“mode”来确定你希望如何打开和操作这个文件。以下是 fopen的 mode 选项及其含义:
1. r: 打开一个已存在的文件进行读取。
2. w: 打开一个文件进行写入。如果文件已经存在,则其内容会被截断为零;如果文件不存在,会创建一个新文件。
3. a: 打开一个文件进行追加写入。如果文件已经存在,写入的数据会被添加到文件的末尾;如果文件不存在,会创建一个新文件。
4. r+: 打开一个已存在的文件进行读取和写入。
5. w+: 打开一个文件进行读取和写入。如果文件已经存在,则其内容会被截断为零;如果文件不存在,会创建一个新文件。
6.a+: 打开一个文件进行读取和追加写入。如果文件已经存在,写入的数据会被添加到文件的末尾;如果文件不存在,会创建一个新文件。
7.b: 二进制模式。这通常与上述模式一起使用(例如,rb、wb),尤其是在那些区分文本和二进制文件的系统中,例如 Windows。在某些系统中,使用 b可能不会产生任何效果,但为了可移植性,最好在打开二进制文件时指定它。
每次使用fopen函数时,都需要确保在之后使用fclose函数关闭文件,以释放系统资源并确保所有的数据都被正确地写入文件。
4、fgetc/fputc
对单个字符进行操作
1、fputc
作用:
向指定文件中输出单个字符
头文件
#inlcude<stdio.h>
函数原型
int fputc(int c,FILE *stream);
参数
c:想要输出的字符
stream:想要输出到的流
返回值
成功返回输出字符的ASCII码值,失败返回EOF(-1)
2、fgetc
作用:
向指定文件中获取单个字符
头文件
#inlcude<stdio.h>
函数原型
int fgetc(FILE *stream);
参数
stream:想要获取字符的流
返回值
成功返回获取字符的ASCII码值,失败或文件结尾返回EOF(-1)
5、fclose()
作用:
关闭指定的流
头文件
#inlcude<stdio.h>
函数原型
fclose(FILE *stream);
参数
stream:想要关闭指定的流
返回值
失败返回EOF(-1)
6、fgets/fputs
对行进行操作
1、fgets
作用:
从指定的流读取一行
头文件
#inlcude<stdio.h>
函数原型
char *fgets(char *s, int size, FILE *stream);
参数
s:接收读取到的字符串
size:限定读取的字符串长度。
stream:限定从那个流里面读取数据
返回值
失败或读到末尾返回NULL,成功返回s。
2、fputs
作用:
向指定的流中输出一行
头文件
#inlcude<stdio.h>
函数原型
int fputs(const char *s, FILE *stream);
参数
s:想要输出的字符串
stream:想要输出到指定的流
返回值:
成功返回一个非负数,失败返回EOF
7、fread/fwrite
对块进行操作
1、fread
作用:
从指定的流中读取一块内容
头文件
#inlcude<stdio.h>
函数原型
size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream);
参数
ptr:想要从流中读取到的内容的地址。
size:对象的大小
nmemb:对象的个数
stream:需要操作的流
返回值
成功返回实际读取的nmemb,失败或读到末尾返回0。
2、fwrite
作用:
向指定的流中写入一块内容
头文件
#inlcude<stdio.h>
函数原型
size_t fwrite(const void *ptr, size_t size, size_t nmemb,FILE *stream);
参数
ptr:要写入流中的内容
size:对象的大小
nmemb:对象的个数
stream:需要操作的流
返回值
成功返回实际写入的nmemb,失败返回0。
8、fseek/ftell/rewind
1、ftell
功能:
获取书签位置
头文件
stdio.h
函数原型
long ftell(FILE *stream);
参数
stream:需要操作的流
返回值:
成功返回书签的位置,失败返回-1并设置错误号
2、rewind
功能:
将书签回到初始位置
头文件
stdio.h
函数原型
void rewind(FILE *stream);
参数
stream:需要操作的流
返回值:
无返回值。
3、fseek
功能:
偏移书签的位置
头文件
stdio.h
函数原型
int fseek(FILE *stream, long offset, int whence);
参数
stream:需要操作的流
offset:偏移量,为整数,正数向后偏移,负数向右偏移,0为不偏移。
whece:偏移起始位
SEEK_SET:文件开头
SEEK_CUR:当前位置
SEEK_END:文件末尾位置
返回值:
成功返回0,失败返回-1并设置错误号。
本文详细介绍了C语言中涉及文件操作的几个重要函数,如fflush用于刷新缓存,fprintf用于输出内容,fopen用于打开文件,以及fgetc/fputc、fgets/fputs、fread/fwrite和fseek/ftell/rewind等函数,展示了如何处理文件的读写和定位。



2583

被折叠的 条评论
为什么被折叠?



