C语言中的文本读写和二进制读写接口

C语言提供了多种标准库函数来处理文件的文本读写和二进制读写操作。以下是主要的接口:

文本读写接口

  1. 基于字符的读写

    • int fgetc(FILE *stream) - 从文件中读取一个字符

    • int fputc(int c, FILE *stream) - 向文件写入一个字符

  2. 基于行的读写

    • char *fgets(char *s, int size, FILE *stream) - 从文件中读取一行

    • int fputs(const char *s, FILE *stream) - 向文件写入一行

  3. 格式化读写

    • int fprintf(FILE *stream, const char *format, ...) - 格式化输出到文件

    • int fscanf(FILE *stream, const char *format, ...) - 从文件格式化输入

二进制读写接口

  1. 块读写

    • size_t fread(void *ptr, size_t size, size_t nmemb, FILE *stream) - 从文件读取二进制数据

    • size_t fwrite(const void *ptr, size_t size, size_t nmemb, FILE *stream) - 向文件写入二进制数据

  2. 文件定位

    • int fseek(FILE *stream, long offset, int whence) - 设置文件位置

    • long ftell(FILE *stream) - 获取当前文件位置

    • void rewind(FILE *stream) - 将文件位置重置到开头

通用文件操作

  1. 文件打开/关闭

    • FILE *fopen(const char *path, const char *mode) - 打开文件

    • int fclose(FILE *stream) - 关闭文件

  2. 错误检测

    • int feof(FILE *stream) - 检测文件结束

    • int ferror(FILE *stream) - 检测文件错误

相关推荐
2401_892070981 天前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
yuzhuanhei1 天前
Visual Studio 配置C++opencv
c++·学习·visual studio
Wenweno0o1 天前
0基础Go语言Eino框架智能体实战-chatModel
开发语言·后端·golang
小O的算法实验室1 天前
2026年ASOC,基于深度强化学习的无人机三维复杂环境分层自适应导航规划方法,深度解析+性能实测
算法·无人机·论文复现·智能算法·智能算法改进
chenjingming6661 天前
jmeter线程组设置以及串行和并行设置
java·开发语言·jmeter
cch89181 天前
Python主流框架全解析
开发语言·python
不爱吃炸鸡柳1 天前
C++ STL list 超详细解析:从接口使用到模拟实现
开发语言·c++·list
十五年专注C++开发1 天前
RTTR: 一款MIT 协议开源的 C++ 运行时反射库
开发语言·c++·反射
Momentary_SixthSense1 天前
设计模式之工厂模式
java·开发语言·设计模式
‎ദ്ദിᵔ.˛.ᵔ₎1 天前
STL 栈 队列
开发语言·c++