Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - wie rekursionstiefe anzeigen lassen? (stack overflow)
horsti - Fr 24.03.06 16:43
Titel: wie rekursionstiefe anzeigen lassen? (stack overflow)
hi,
ich habe eine rekursion die ein problem löst, doch manchmal funktioniert es und manchmal kommt ein stack overflow. das debuggen gestaltet sich sehr schwierig, weil es super viele aufrufe sind.
mich würde die aktelle rekursionstiefe interessieren. kann man sich die irgendwo anzeigen lassen?
ich habe bereits das fenster "aufruf-stack" gefunden, aber ist das was ich suche?
Gausi - Fr 24.03.06 16:47
Für Testzwecke würde ich sowas machen:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10:
| var tiefe: integer;
procdure myRec; begin Label1.Caption := IntTostr(tiefe); inc(tiefe); myRec; dec(tiefe); Label1.Caption := IntTostr(tiefe); end; |
AXMD - Fr 24.03.06 16:47
Titel: Re: wie rekursionstiefe anzeigen lassen? (stack overflow)
horsti hat folgendes geschrieben: |
ich habe bereits das fenster "aufruf-stack" gefunden, aber ist das was ich suche? |
Dort kannst du ja sehen, wie oft sich die Funktion selbst aufgerufen hat. Anonsten kannst du ja auch eine Variable um 1 hochzählen lassen, wenn die Funktion aufgerufen wird ;)
AXMD
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!