int Load_1()//把文件中的数据读取到链表中
{
FILE* pf = fopen("d:\\Stu.lp", "rb");
Stu* pTemp;
while (!feof(pf))
{
pTemp = (Stu*)malloc(sizeof(Stu));
fread(pTemp, sizeof(Stu),1, pf);
pTemp->pNext = pHead;
pHead = pTemp;
}
return 0;
}
void Save_1()//把程序中用的数据保存到文件中
{
FILE* pf = fopen("d:\\Stu.lp", "wb");
struct Stu* pTemp = pHead;
while (pTemp)
{
fwrite(pTemp, sizeof(Stu),1, pf);
pTemp = pTemp->pNext;
}
}
这是定义的两个结构体:
typedef struct Stu_Data
{
char S_Name[20];
size_t S_Num;
float S_Score;
}Data;
struct Stu
{
Data D;
struct Stu* pNext;
};
新手代码写的不好,
这个 load()函数总是多循环一次打出乱码