我是一个递归的新手。我如何在递归函数中使用fopen
和fclose
文件?如何在递归下对文件进行fprintf
void make(LINK lis, char *name, int flag, FILE *f)
{
if (lis == NULL) {
fclose(f);
}
else {
if (flag == 0) {
FILE *f = fopen(name, "w");
flag = 1;
}
else {
fprintf(f, "CODICE: %d\n", lis->d.codice);
make(lis->next, name, 1, f);
}
}
}
我的目标是在文件中递归地写“codice” - > CODE。
你的[mcve]不编译,我不明白你的问题。 – Stargateur
这不是递归的。 'make'和'crea'应该是相同的功能吗? – Prune
你为什么要递归呢?这种情况下迭代处理效果更好,原因很明显:您不明白如何打开和关闭文件。 – Prune