000
08.12.2007, 17:54 Uhr
~fabske
Gast
|
Ich habe ein Problem mit einer Übungsaufgabe. Ich soll einen Baum in eine Datei speichern, aber das Problem ist der filepointer, denn das auslesen des Baumes geht ja nur rekursiv. Es funktioniert alles, die Datei wird angelegt, aber sie ist immer lehr
So sieht ein Knoten aus:
Code: |
struct Knoten { char name[20]; struct Knoten* links; struct Knoten* rechts; };
|
Das hier ist die Funktion:
Code: |
int speicherBaum(struct Knoten* Baum, char* Dateiname) { FILE *fp; fp = fopen(Dateiname,"w"); schreibBaum(Baum, &fp); fclose(fp);
return 0; }
int schreibBaum(struct Knoten* Baum, FILE* fp) { fprintf(fp,"%s\n", (*Baum).name); //printf(" %s\n", (*Baum).name); if((*Baum).links!=NULL) schreibBaum((*Baum).links, fp); if((*Baum).rechts!=NULL) schreibBaum((*Baum).rechts, fp);
return 0; }
|
|