结构体变量和文件,相关问题

用结构体变量进行定义学生信息保存到文件后,如何求出里面共有多少个学生的信息

供参考:

#include<stdio.h>
struct Student
{
    int  num;
    char name[20];
    char sex;
    int  age;
}tmp;

int count_file()
{
    FILE* fp;
    int cnt = 0;
    fp = fopen("student.txt","r");
    if (fp == NULL)
        return cnt;
    while (1) {
        if (fread(&tmp,sizeof(struct Student),1,fp) != 1) break;
        cnt++;
    }
    fclose(fp);
    return cnt;
}

int main()
{
    int n = -1;
    n = count_file();
    printf("%d\n",n);
    return 0;
}

用write写入,read读取。一次读取一个学生信息。

问题需要问的清楚一些哦~~~

如果只是想要知道学生总数,那是很简单的,只要保证文件的前四个字节为total 所属。
每一次添加学生的时候,记得修改这前4 个字节就好,下次读取文件的前4 个字节,就知道学生的总数