Остановка выполнения
Существует два способа сообщить IDE, что программу нужно выполнить до определенной точки, а затем остановить.
Первый способ состоит в том, чтобы найти позицию в программе, где необходимо остановиться, затем выбрать в меню Run команду Go to Cursor (Выполнение до позиции курсора). Программа выполняется как обычно, пока не достигнет оператора, где она должна остановиться. В этой точке можно проверить значения и продолжать выполнение непрерывно или по шагам.
Второй способ состоит в том, чтобы остановить в определенной заданной точке программу. Эта точка называется точкой останова. Во время выполнения программы, она останавливается перед выполнением оператора в точке останова. В программе можно установить несколько точек останова.
Отслеживание и модификация
Для наблюдения за выводом программы встроенный отладчик имеет средства для просмотра значений переменных, выражений и структур данных. С помощью команды Watches в меню Debug в окне просмотра Watches можно добавлять или удалять отслеживаемые элементы. В этом диалоговом окне можно проверять переменные и выражения и изменять значения любых переменных, включая строки, указатели, элементы массива и поля записей, что позволяет проверить реакцию программы на различные условия.
Понятие отладочного шага
При отладке программы, наименьшим выполняемым элементом является строка. Поэтому, если на одной строке программы содержится несколько операторов Паскаля, нельзя отладить эти операторы индивидуально. Следовательно, нужно разбить оператор на несколько строк, которые будут выполняться за один шаг.
Строка выполнения выводится цветом, отличным от нормального цвета. Благодаря этому можно видеть, в каком месте программы идет проверка.
Выполнение программы по шагам
Это простейший способ выполнения программы по элементарным
фрагментам. Выбор команды Run|Step Over или нажатие клавиши F8 вызывает выполнение отладчиком всего кода в операторе, указанном строкой выполнения, включая любые вызываемые на ней процедуры или функции, пока управление не вернется обратно к программисту. После этого строка выполнения указывает следующий выполняемый оператор.
Для примера возьмем следующую программу:
Program StepTest;
function Negate(X: Integer): Integer;
Begin
Negate := -X;
End;
Var
I: Integer;
Begin
for I := 1 to 10 do Writeln(Negate(I));
End.
Пример 1 Простая программа, выполняемая по шагам.
Если нажать клавишу F8, то строка выполнения перемещается на оператор begin в начале основного цикла, поскольку это первое, что выполняется в программе. Второе нажатие клавиши F8 выполняет begin и перемещает строку выполнения вниз до оператора for на следующей строке. После этого нажатие F8 вызывает выполнение всего цикла for на экран пользователя выводятся числа от -1 до -10, а строка выполнения перемещается к end.
Хотя функция Negate вызывается 10 раз, строка выполнения никогда на нее не перемещается. Выполнение по шагам позволяет отладчику не показывать детали любых вызовов для отдельной строки.
Выполнение по шагам вызывает выполнение всего цикла for сразу, поэтому невозможно видеть изменения в ходе выполнения цикла.
Если необходимо видеть подробности цикла, то в пример нужно внести следующее простое изменение:
Begin
for I := 1 to 10 do
Дата добавления: 2016-02-02; просмотров: 463;