void SaveDete(contact* pc)//保存数据
{
//打开文件
FILE* pf;
errno_t Err;
Err = fopen_s(&pf, "通讯录.dat", "w");
if (Err==0)
{
printf("文件打开成功\n");
}
else
{
perror("SaveDete");
printf("失败\n");
}
//存入数据
int i = 0;
if (pf)
{
for (i = 0; i < pc->sz; i++)
{
fwrite(pc->dete + i, sizeof(conInfo), 1, pf);
}
}
//关闭文件
if (pf)
{
Err = fclose(pf);
}
if (Err == 0)
{
printf("保存成功成功,无事发生\n");
}
else
{
printf("失败\n");
}
pf = NULL;
}
是不是第一次占用了文件IO没释放。第二次就不能写了。
程序没有写权限