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) - 检测文件错误

相关推荐
GuWenyue1 小时前
传统Agent工具两大痛点!300行代码落地MCP跨语言工具,彻底解耦LLM与工具
前端·人工智能·算法
优橙教育1 小时前
5G网优培训 vs Java开发:转行选哪个?
java·开发语言·5g
同勉共进3 小时前
记一例 vibe coding + gcc bug 导致的线程池死锁问题
c++·线程池·gcc·死锁·vibe coding
我叫洋洋3 小时前
C ++ [ hello world ]
c语言·c++·算法
SeaTunnel3 小时前
从 Python Script 地狱到标准化数据集成框架
大数据·开发语言·python·程序员·代码·seatunnel
碎光拾影4 小时前
ARM交叉工具链各工具作用及IMX6ULL平台LED+蜂鸣器裸机程序实现
java·开发语言·数据库
奋发向前wcx4 小时前
y1,y2总复习笔记5 2026.7.19
数据结构·笔记·算法
Marst Code4 小时前
(python)2026Plotly 库评估:交互式可视化到底值不值得引入?
开发语言·python
Miao121314 小时前
微服务 API 测试实践:海外某民宿平台如何构建模式驱动测试基础设施
java·开发语言
CRMEB系统商城6 小时前
开源自建还是SaaS订阅?算一笔3年经济账
java·大数据·开发语言·开源