这一阶段已经学过结构体、指针、动态内存、文件和错误处理。现在把它们组合成一个可以真正保存数据的通讯录。
功能范围
第一版只实现:
- 添加联系人;
- 按姓名查找;
- 列出全部联系人;
- 删除联系人;
- 保存到文本文件;
- 启动时从文本文件加载。
不要一开始就加入登录、网络同步、图形界面等功能。综合项目的目标是练习清晰边界,而不是无限堆需求。
数据模型
2026/7/8大约 4 分钟
这一阶段已经学过结构体、指针、动态内存、文件和错误处理。现在把它们组合成一个可以真正保存数据的通讯录。
第一版只实现:
不要一开始就加入登录、网络同步、图形界面等功能。综合项目的目标是练习清晰边界,而不是无限堆需求。
变量和动态内存在程序结束后都会失去意义。要让数据在下一次运行时仍然存在,需要把它写入文件。文件 I/O 也是程序与配置、日志、数据集和其他工具交换信息的基础。
FILE * 是什么C 标准库使用 FILE 对象表示一个已打开的流。程序通常只持有 FILE *,不直接访问内部字段:
FILE *file = fopen("scores.txt", "r");