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