就是这个部分,一运行到这里系统就奔溃了
//初始化书籍链表
book_info* Init_Book(book Lb)
{
int i=0;
Lb = (book_info*)malloc(sizeof(book_info));
book f = (book_info*)malloc(sizeof(book_info));
book b = (book_info*)malloc(sizeof(book_info));
if( Lb == NULL || b == NULL || f == NULL){
printf("error!\n");
return NULL;
}
FILE *fp;
fp=fopen("library","r");
if(fp==NULL)
{
printf("error!");
}
rewind(fp);
while(!feof(fp))
{
if(i=0)
{
b->next = NULL;
Lb->next = b;
f = b;
fscanf(fp,"%s %s %s %s %s %f %d %d",&b->book_num,&b->book_name,&b->book_author,&b->book_field,&b->book_publisher,&b->book_price,&b->book_index,&b->book_index2);
}
i++;
b = (book_info*)malloc(sizeof(book_info));
if(b == NULL)
{
printf("error!\n");
return NULL;
}
b->next = NULL;
f->next = b;
f = b;
fscanf(fp,"%s %s %s %s %s %f %d %d",&b->book_num,&b->book_name,&b->book_author,&b->book_field,&b->book_publisher,&b->book_price,&b->book_index,&b->book_index2);
}
fclose(fp);
return Lb;
}
这是一开始用来保存的han'shu
void save_book( book Lb )
{
book b=Lb;
FILE *fp;
fp=fopen("library","wb");
if(fp==NULL)
{
printf("error!");
}
while(b->next!=NULL)
{
b=b->next;
fprintf(fp,"%s %s %s %s %s %f %d %d",b->book_num,b->book_name,b->book_author,b->book_field,b->book_publisher,b->book_price,b->book_index,b->book_index2);
printf("HH");
}
fclose(fp);
}