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;/*尾结点指针置空*/