我是一個遞歸的新手。我如何在遞歸函數中使用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