Страница 1 из 1

Пошаговое выполнение программы.

Добавлено: Чт янв 22, 2009 3:31 am
Lesha
Напомните, пожалуйста, как воспользоваться режимом пошагового выполнения программы?
Т.е. для отладки удобно смотреть результат после каждого шага, чтобы легче было найти ошибку. Т.е. хотелось бы после каждого шага просматривать значения нужных переменных. Как это можно сделать? Соответственно, как переходить к следующему шагу?

Добавлено: Чт янв 22, 2009 9:54 am
aar
Смотрите в хелпе Interactive Maple Debugger

Добавлено: Пн янв 26, 2009 4:16 am
Lesha
Что-то не нахожу в хэлпе (7-я версия Maple) Interactive Maple Debugger. Слово Debugger есть а слова Interactive - нет.
Но посмотрел по слову debugger (тема называется The Maple debugger). Вероятно - это то, что имелось в виду. Но ума не приложу что к чему. Припоминаю, что как-то давно во время выполнения программы нажимал какие-то кнопки и она останавливалась либо во время нажатия какой-то кнопки - начинала работать (точно не помню). Помню, что можно было как-то делать так, что она не работала и в этот момент смотреть текущие значения переменной. После чего нажатием кнопки - работать продолжала (возможно, только в течение одного шага - не помню).
Заподозрил, что в описании "The Maple debugger" - что-то другое, хоть возможно, и предназначенное для какого-то интерактивного контроля. Впрочем, если так, то это тоже подошло бы...
Но "на пальцах" не могли бы сказать как запустить выше описанную возможность интерактивного контроля.

Добавлено: Пн янв 26, 2009 10:17 am
aar
В Maple 7 Interactive Maple Debugger нет. Вручную отладка проходит так. Допустим, имя тестируемой процедуры: SomeName. Используете
>showstast(SomeName);
чтобы определить нумерацию операторов процедуры. Дальше
> stopat(SomeName);
если нужно остановить процесс выполнения сразу при вхождении в процедуру, или
> stopat(SomeName, 10);
если надо остановить процесс на 10-м операторе.
Дальше запускаете процедуру
> SomeName();
Когда процесс доходит до точки останова, появляется приглашение
DBG>
и здесь пишете имя переменной, значение которой хотите узнать, или любое нужное Вам выражение. Например
DBG> args
покажет значение аргументов процедуры. Продолжить вычисления:
DBG> step
DBG> next
DBG> into
DBG> cont
DBG> quit
посмотрите в хелпе, это там должно быть.