这个rename和remove函数为什么会失效?
if(num==3) { /*删除图书*/
fpx=fopen("d:\mywork\book.txt","ab+");
fpy=fopen("d:\mywork\tushu.txt","wb+");
printf("请输入需要删除图书的编号:\n");
scanf("%d",&bianhao);
for(i=0; i<bookshu; i++) {
fread(&book[i],sizeof(struct Book),1,fpx);
}
k=i;//k为书本数目+1
for(i=0; i<k; i++) {
if(book[i].bianhao==bianhao) {
continue;
} else {
fwrite(&book[i],sizeof(struct Book),1,fpx);
}
}
i=0;
bookshu=bookshu-1;
printf("删除图书成功!\n");
fclose(fpx);
fclose(fpy);
remove("d:\mywork\book.txt");
rename("d:\mywork\tushu.txt","D:\mywork\book.txt");
}