Programm bricht einfach ab

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Smily

Betreff: Programm bricht einfach ab

BeitragSa, Aug 25, 2007 15:37
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo,
ich wollte mithilfe einer Rekursiven Funktion mein Verzeichnissbaum ausgeben lassen:

Code: [AUSKLAPPEN]

Print "**** START ****"
showtree("/",1)
Print "***** END *****"
Function showtree(d$, deep = 0)
   dir = ReadDir(d$)
   For x = 1 To deep
      v$ = v$ + "  "         
   Next
   Repeat
      file$ = NextFile(dir)
      If file$ = "." Or file$ = ".." Continue
      If file$ = "" Exit
      Print v$ + d$ + file$
      If FileType(d$ + file$) = 2 showtree(d$ + file$ + "/", deep + 1)
   Forever
End Function


bei mir bricht das Programm aber mittendrin ab.. (um genau zu sein bei "/lib/modules/2.6.20-15-generic/build/include/config/arcnet/rim", aber ich glaube nicht, dass das Relevant ist)

(wenn ich die zeile "if Filetype..." auskommentiere wird die erste ebene meiner verzeichnissstruktur komplett angezeigt)

Wo liegt mein Fehler?

Gruß, Smily0412
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Artemis

BeitragSa, Aug 25, 2007 16:01
Antworten mit Zitat
Benutzer-Profile anzeigen
DebugModus? Welcher Fehler kommt?
 

Dreamora

BeitragSa, Aug 25, 2007 16:02
Antworten mit Zitat
Benutzer-Profile anzeigen
Ich vermute mal du übersteigst die stackgrössen mit einer recursion ins lib verzeichnis

Kannst ja mal alles linearisieren.
Funktion liest alle verzeichnisse des aktuellen verzeichnis an und speichert sie in die liste -> danach raus aus funktion

und das hauptprogramm ruft für jedes element der liste die funktion auf ... die liste wird logischerweise während des durchgehens wachsen, wenn du addlast verwendest ist das jedoch kein problem.
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen.

Smily

BeitragSa, Aug 25, 2007 16:19
Antworten mit Zitat
Benutzer-Profile anzeigen
@Dreamora
thx erstmal. Das was du genannt hattest war nicht das Problem, aber als ich es linear umschreiben wollte ist mir der fehler aufgefallen ^^ ich hab das
Code: [AUSKLAPPEN]
Closedir dir
vergessen.

damit gehts jetzt ^^ (zumindest bis jetzt.. mein Programm ist noch am laufen ^^)
Lesestoff:
gegen Softwarepatente | Netzzensur | brain.exe | Unabhängigkeitserklärung des Internets

"Wir müssen die Rechte der Andersdenkenden selbst dann beachten, wenn sie Idioten oder schädlich sind. Wir müssen aufpassen. Wachsamkeit ist der Preis der Freiheit --- Keine Zensur!"
stummi.org

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group