gpt4 book ai didi

c - C中函数 "remove()"不删除选中的文件

转载 作者:太空宇宙 更新时间:2023-11-04 00:35:10 25 4
gpt4 key购买 nike

我有这个功能:

void aggiornadatabase(void) {
FILE* fp;
int c=0;
char str[30];
int m;

sprintf(str, "%s.csv", utenti[posizioneuser].id);
printf("%s\n", str);
fp = fopen(str, "w");
if (fp == NULL)
printf("Database error\n");
else
m = remove(str);

if (m == 0)
printf("Success\n");
else
printf("Unable to delete the File\n");

fclose(fp);
}

执行此函数时,它会删除所选 .csv 文件中的所有内容,但不会删除文件本身(实际上会打印“无法删除文件”)。

为什么会这样?

最佳答案

文件保持打开状态,删除打开的文件是实现定义的,因此删除可能成功也可能不成功。您最好在 尝试删除 文件之前关闭该文件。

关于c - C中函数 "remove()"不删除选中的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44291574/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com