Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб 1. Отладка-исправленный.doc
Скачиваний:
1
Добавлен:
13.11.2019
Размер:
72.19 Кб
Скачать

Лабораторная работа 1

ОТЛАДКА ПРОГРАММ

Отладка- это процесс удаления ошибок из программы

Программирование- процесс создания ошибок

Цель работы: ознакомится с технологией отладки объектно-ориентированных, управляемых событиями программ.

Вы написали программу по ИНДЗ и она заработала. В этом семестре вам придется создавать существенно более сложные и громоздкие программы и поэтому вначале необходимо вспомнить или ознакомится с основными способами отладки.

ПОШАГОВЫЙ РЕЖИМ

Пошаговый режим представляет собой процесс исполнения программы, при котором за один раз исполняется только одна инструкция. Для реализации этого режима нажмите клавишу F10 или выберите пункт меню Debug/ Step Over. Обратите внимание, что первая инструкция в теле функции Main окажется выделенной желтым цветом. Тем самым указано место, с которого начнется выполнение программы. Также следует обратить внимание, что строки объявления используемых модулей, классов и переменных обходятся отладчиком, поскольку с ними не связаны действия, которые могут быть трассированы.

Нажмите клавишу F10 несколько раз и обратите внимание, как движется выделенная строка от одной к другой.

При пошаговом режиме вы можете заходить в вызываемые функции, используя клавишу F11 или пункт меню Debug/Step Into. В некоторых случаях не обязательно заходить в функции — достаточно только следить за их выполнением, для чего понадобится клавиша F10. Всякий раз при нажатии этой клавиши выполняется следующая инструкция, но трассировка вызова функции не происходит. Однако клавиша F11 не даст вам возможности для трассировки встроенных функций.

Точки останова

Как ни полезен пошаговый режим, в больших программах его использование может быть очень утомительным, особенно если отлаживаемый участок кода расположен глубоко в программе. Вместо клавиш F10 и F11 для достижения отлаживаемого участка кода гораздо удобнее использовать точки останова в начале критического участка кода, то есть того участка, который необходимо отладить. Точка останова, в соответствии со своим названием, означает остановку выполнения программы. Когда выполнение программы достигает точки останова, программа прекращает выполняться до того, как соответствующая строка кода будет выполнена. Управление возвращается отладчику, что позволяет проверить значение определенных переменных и начать режим пошаговой отладки.

Установить точку останова можно на любую инструкцию исполняемого кода. После задания одной или нескольких точек останова следует запустить программу при помощи клавиши F5 или меню Debug/Start. Существует два основных типа точек останова: условные и безусловные.

Безусловные точки останова

Безусловные точки останова всегда прекращают выполнение, как только встречаются в программе. Существует несколько способов добавить точки останова этого типа. Первый заключается в том, чтобы поместить курсор на той строке кода, где надо установить точку останова. Затем можно выбрать один из следующих способов задания точки останова:

— нажать клавишу F9;

— щелкнуть левой кнопкой мыши по левому столбцу окна кода. На нем появится коричневая точка.

В программе может быть несколько активных точек останова.

Закладка Function этого окна предоставляет возможность установить точку останова на любую функцию в программе.

Для этого в поле Function: вам следует ввести имя функции, при вызове которой программа должна остановиться. При необходимости вы можете установить смещение точки останова в функции, указав значения в полях Line и Character. Закладка File окна New Breakpoint позволяет установить точку останова на любое место в лю бом файле проекта.

Для этого следует указать в поле File имя файла проекта, в который нужно поместить точку останова, а в полях Line и Character — указать номер строки и позицию символа в строке, на котором устанавливается точка останова. Закладки Address и Data позволяют установить точки останова на конкретный адрес в программе

или переменную, соответственно.

Условные точки останова

Условные точки останова в коде программы позволяют указать условия, при которых точки останова прекратят выполнение программы, а также определить действия, которые произойдут при этом. Для прикрепления к точке останова определенного условия необходимо воспользоваться окном, появляющимся в контекстном меню точки останова Condition

Введите в поле Condition строку условия, как будто описываете инструкцию внутри блока if:

i == 3

Установите флажок is true и нажмите ОК. Запустите программу при помощи клавиши F5 Когда значения переменной i станет равно 3, выполнение программы прервется и перейдет в окно отладчика.

Кроме наложения условия на точку останова, можно установить точку останова таким образом, чтобы она срабатывала после выполнения нескольких итераций цикла.

Для этого необходимо воспользоваться Hit Count..., расположенной в контекстном меню точки останова,

По умолчанию, в списке выбора типа повторений установлено значение break always (всегда). Это означает, что программа будет останавливаться на каждой итерации цикла. Если вы выберете пункт break when the hit count is equal to, то программа остановится на точке останова после выполнения указанного числа итераций. Если вы выберете пункт break when the hit count is a multiple of, то программа будет останавливаться лишь на тех итерациях, значение которых без остатка делится на указанное. Так, если вы укажете число 2, то программа будет останавливаться на каждой четной итерации цикла, если же укажете число 10, то программа будет останавливаться на каждой 10 итерации цикла. Последним пунктом списка является элемент break when the hit count is greater than or equal to. Выбор этого пункта заставит программу останавливаться на точке останова, если количество итераций цикла будет равным или превысит указанное значение.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]