Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатика
ИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханика
ОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторика
СоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансы
ХимияЧерчениеЭкологияЭкономикаЭлектроника

Отладка программы в среде Turbo Pascal.

Читайте также:
  1. Begin {начало основной программы} . . .
  2. Begin {начало основной программы} . . .
  3. II. Организация и программы Олимпийских игр.
  4. II. Требования к результатам освоения основной образовательной программы начального общего образования
  5. II. ТРЕБОВАНИЯ К РЕЗУЛЬТАТАМ ОСВОЕНИЯ ОСНОВНОЙ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ НАЧАЛЬНОГО ОБЩЕГО ОБРАЗОВАНИЯ
  6. II. Требования к результатам освоения ОСНОВНОЙ ОБРАЗОВАТЕЛЬНОЙ ПРОГРАММЫ НАЧАЛЬНОГООБЩЕГО ОБРАЗОВАНИЯ
  7. II. Требования к структуре основной общеобразовательной программы дошкольного образования

Отладка - это процесс поиска и исправления ошибок в программе, препятствующих корректной работе программы. Существует три основных типа ошибок: ошибки этапа компиляции, ошибки этапа выполнения и логические ошибки.

Ошибки этапа компиляции или синтаксические ошибки происходят, когда ваш исходный код нарушает правила синтаксиса Паскаля. Turbo Pascal не может скомпилировать вашу программу, пока она не будет содержать допустимые операторы Паскаля. Наиболее общей причиной ошибок этапа компиляции являются ошибки набора (опечатки), пропущенные точки с запятой, ссылки на неописанные переменные, передача неверного числа (или типа) параметров процедуры или функции и присваивание переменной значений неверного типа.

Ошибки этапа выполнения или семантические ошибки происходят, когда вы компилируете полную программу, которая при ее выполнении делает что-то недопустимое. То есть, программа содержит допустимые операторы Паскаля, но при выполнении операторов что-то происходит неверно. Например, ваша программа может пытаться открыть для ввода несуществующий файл или выполнить деление на ноль. Когда программа Turbo Pascal обнаруживает такую ошибку, она завершает выполнение и выводит сообщение следующего вида: Run-time error ## at seg:ofs и автоматически находит вызвавший ошибку оператор.

Логические ошибки - это ошибки проектирования и реализации программы. То есть, ваши операторы допустимы и что-то делают, но не то, что вы предполагали. Эти ошибки часто трудно отследить, но к счастью, среда Turbo Pascal включает в себя средства отладки, помогающие вам найти логические ошибки. Команды выполнения по шагам Step Over(F8) и трассировки Trace Into(F7) меню выполнения Run дают вам возможность построчного выполнения программы. Единственное отличие выполнения по шагам и трассировки состоит в том, как они работают с вызовами процедур и функций. Выполнение по шагам вызова процедуры или функции интерпретирует вызов как простой оператор и после завершения подпрограммы возвращает управление на следующую строку. Трассировка подпрограммы загружает код этой подпрограммы и продолжает ее построчное выполнение.

Остановка выполнения. Существует два способа выполнения программы до определенной точки. Первый и простейший способ состоит в том, чтобы найти позицию в программе, где вы хотите остановиться, затем выбрать в меню Run команду Go to Cursor(F4) (Выполнение до позиции курсора). Ваша программа выполняется как обычно, пока не достигнет оператора, где она должна остановиться. В этой точке вы можете проверить значения и продолжать выполнение непрерывно(Ctrl+F9) или по шагам(F4-F7-F8). Второй способ состоит в том, чтобы остановить в определенной заданной точке вашу программу. Эта точка называется точкой останова. Когда вы выполняете программу, она останавливается перед выполнением оператора в точке останова. Точки останова - это более гибкий механизм, чем использование метода выполнения до позиции курсора, поскольку в программе вы можете установить несколько точек останова. Чтобы установить в своем коде точку останова, переместите курсор на той строке, где вы хотите остановиться и нажмите клавиши Ctrl+F8. Чтобы отменить точку останова, поместите курсор на содержащую ее строку и нажмите клавиши Ctrl+F8.

Для работы с точками останова удобно использовать диалоговое окно Breakpoints пункта меню Debug. В этом диалоговом окне вы можете устанавливать, удалять, редактировать и просматривать свои точки останова. С помощью параметров диалогового окна Edit Breakpoint вы можете создать условные точки останова. В этих точках останова вы можете задать два вида условий: счетчик проходов и логические условия. Задание для точки останова счетчика проходов сообщает отладчику, что останавливать программу нужно не при каждом достижении точки останова, а только на n-ый раз. В качестве условия для точки останова служит выражение типа Boolean. Например, вы можете проверить, попадает ли переменная в заданный диапазон, или установлен ли некоторый флаг.

Заметим что легче всего добавить условные точки останова командой Debug\Add Breakpoint…

Просмотр значений. Среда Turbo Pascal имеет два инструментальных средства для проверки содержимого переменных программы: окно Watches (Просмотр) и диалоговое окно Evaluate and Modify (Вычисление и модификация). Окно Watches показывает переменные и их значения в каждый конкретный момент. Чтобы открыть окно Watches, выберите команду Window\Watch. Чтобы добавить в окно Watches переменную, выберите команду Debug\Add Watch или нажмите клавиши Ctrl+F7. Если окно Watches является активным окном, вы можете добавить выражение просмотра, нажав клавишу Ins (вы можете также удалить текущее выражение, нажав клавишу Del или Ctrl+Y). По умолчанию выражением считается слово в позиции курсора в текущем окне редактирования. Просматриваемые выражения, которые вы отслеживали ранее, сохраняются в списке протокола.

Кроме добавления просматриваемых выражений при выполнении программы, отладчик имеет средство, позволяющее вам в любой момент вычислять выражения и изменять на этапе выполнения значения переменных. Чтобы вычислить выражение, выберите команду DebugіEvaluate/Modify или нажмите клавиши Ctrl+F4. По умолчанию слово в позиции курсора в текущем окне редактирования выводится подсвеченным в поле Expression (Выражение). Когда вы нажимаете Enter или щелкаете "мышью" на командной кнопке Evaluate, текущее значение выражения в поле Expression показывается в поле Result. Для модификации переменных во время отладки введите переменную в поле Expression, затем в поле New Value наберите новое значение.

 

В ходе сеанса отладки иногда желательно начать все сначала. Выберите команду RunіReset Program или нажмите клавиши Ctrl+F2. Это приведет к полному сбросу, так что выполнение по шагам, или трассировка начнется в начале основной программы.

 

 


Дата добавления: 2015-07-26; просмотров: 112 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Процедуры.| II. Экспериментальный раздел работы.

mybiblioteka.su - 2015-2024 год. (0.006 сек.)