用C语言实现通讯录文件存储的版本

本文介绍了如何使用C语言的fopen、fprintf和fscanf函数实现通讯录的文件存储。通过"fopen"以"r+"和"w"模式读写文件,结合"fprintf"和"fscanf"进行数据的存取,实现对文件中通讯录信息的操作。
摘要由CSDN通过智能技术生成
要实现文件存储,首先需要了解几个函数
  1. fopen :FILE *fopen( const char *filename, const char *mode );
    作用:fopen函数打开指定的文件文件名。;参数filename字符串表示打开文件的文件名。参数mode字符串表示打开方式;
    今天我们用到了两个打开方式: “r+”和“w”
    “r+”:打开对阅读和写作。该文件必须存在。(这里也可以用”r”);
    “w”:读写打开一个空文件。如果给定的文件存在,它的内容被破坏。
  2. fprintf 和 fscanf
    int fprintf( FILE *stream, const char *format [, argument ]…);
    int fscanf( FILE *stream, const char *format [, argument ]… );
    用法和printf(fscanf)其实相同,只是前面加了一个文件结构体指针stream,把在在键盘上读换成文件中读,把往屏幕上写换成往文件中写。

    介绍完我们使用的函数,先介绍下我的思想:
    这里写图片描述

    代码有三个文件项组成:
    adder.h
    adder.c
    test.c

//adder.h 这里面就是定义了一些常量,和函数
#ifndef __ADDER_H__
#define __ADDER_H__
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#include<malloc.h>
#define MAX_CON  2
#define MAX_name 20
#define MAX_sex  7
#define MAX_tele 15
#define MAX_add  20
typedef struct Contacts
{
    char name[MAX_name];
    char sex[MAX_sex];
    int age;
    char tele[MAX_tele];
    char add[MAX_add];
}Contacts;
typedef struct Pcon
{
    int MAX_data;
    int sz;
    Contacts *adder;
}Pcon;
void read_exe(Pcon *Pconer);//读取文件中数据
void Add_contact(Pcon* pconer);//增添联系人
void Del_contact(Pcon* pconer);//删除联系人
void Find_contact(Pcon* pconer);//查找联系人
void Mod_contact(Pcon* pconer);//删除联系人
void Acc_contact(Pcon* pconer);//修改联系人
void Remov_contact(Pcon* pconer);//清除通讯录
void Sort_contact(Pcon* pconer);//按姓名排序通讯录
void write_exe(Pcon *Pconer);//退出程序前写入文件中
#endif //__ADDRE_H__
//test.c
#include "adder
  • 2
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值