nästa upp förra innehåll
Nästa: Modularisering Upp: Avlusning av pascalprogram Förra: Kommandon för utskrift

Procedurer och anropsstacken

 När programmet har stannat vid en brytpunkt inne i en funktion eller procedur kan det vara givande att titta på anropsstacken, det vill säga att se i vilka procedurer man just nu befinner sig (till exempel att huvudprogrammet anropat proceduren A som i sin tur har anropat funktionen B som anropat funktionen C som anropat funktionen D i vilken brytpunkten finns).

Kommandot where talar om vilka procedurer man är inne i. Kommandot ger hela anropsstacken av procedurer med den aktuella proceduren överst och huvudprogrammet underst. Man får också veta vilken rad man befinner sig på i alla procedurer i anropsstacken.

Det går att byta synfält för att undersöka till exempel lokala variabler i andra procedurer i anropsstacken. Det gör man med kommandona up och down. Kommandot up flyttar synfältet till den procedur som anropat den aktuella proceduren (det vill säga ett steg ner i anropsstacken) och kommandot down flyttar synfältet tillbaka ett steg (upp i anropsstacken).

Om man vill veta vilken procedur som är i synfältet för tillfället skriver man frame. Synfältet återgår automatiskt till den innersta (alltså översta) proceduren när man fortsätter exekveringen.



nästa upp förra innehåll
Nästa: Modularisering Upp: Avlusning av pascalprogram Förra: Kommandon för utskrift

Viggo Kann
Fri Aug 7 00:55:14 MET DST 1998