first和end做为全局变量,分别指向链表的头和尾。建立链表的方式也比较简易,从二进制文件数据块中,依次从头到尾读取,每读取一个就建立一个结点。
/*基本模型*/
EMP *emp1;
while(!feof(fp))/*读取二进制文件到尾*/
{
emp1=(EMP *)malloc(sizeof(EMP));
fread(emp1,sizeof(EMP),,fp);/*读取数据*/
if(emp_first==NULL)/*链表串接*/
{
emp_first=emp1;
emp_end=emp1;
}
else
{
emp_end->next=emp1;
emp_end=emp1;
}
};
emp_end->next=NULL;/*尾结点指针置空*/