Отладка программы. В процессе создания новой программы программисту приходится сталкиваться с несколькими видами ошибок.
В процессе создания новой программы программисту приходится сталкиваться с несколькими видами ошибок.
Во-первых, это синтаксические ошибки, связанные с неправильным употреблением различных элементов и конструкций языка Turbo Pascal. Причиной возникновения таких ошибок обычно являются недостаточно хорошее знание языка программирования и опечатки при наборе текста программы. Такие ошибки определяются на этапе компиляции. Все объекты данных, используемые в программе, должны быть описаны в разделе описаний, поэтому, если при наборе программы вследствие опечатки появляется «ложная» переменная, компилятор обязательно сообщит об этом.
Второй вид ошибок - ошибки при выполнении программы. Сообщение о такой ошибке имеет вид
Run-time error <errnum> at <segment>:<offset>
где <errnum> — это код ошибки, a <segnient>:<offset> — адрес в памяти, где произошла ошибка. Довольно часто оказывается, что синтаксически
правильная программа завершается аварийно, с сообщением, например, о попытке деления на ноль. Программа может по непонятной причине зациклиться или ведет себя в процессе выполнения не так, как предполагал программист. Почему? Выяснить это можно, применяя методы отладки программы.
Ну и, наконец, наиболее тяжелые ошибки(алгоритмические) бывают связаны с неправильным выбором модели, алгоритма решения задачи или с неправильной постановкой задачи. Здесь мы остановимся на тех методах отладки, которые доступны из интегрированной среды Turbo Pascal для среды DOS.
Речь пойдет о возможностях встроенного отладчика, доступ к функциям которого открывает меню Debug в среде MS DOS.
Отладчик работает с исходным текстом программы, то есть доступ к элементам программы осуществляется на уровне исходного текста. Это делает работу программиста более наглядной и эффективной. Следует заметить, что многие другие отладчики не дают такой возможности, и работа с ними является более сложной и трудоемкой. Чтобы использовать встроенный отладчик, следует установить компилятору опции генерации отладочной информации. Интегрированный отладчик Turbo Pascal дает возможность пошагового
выполнения программы. При этом можно просматривать значения различных переменных, что иногда дает ценную информацию о реальной работе програм-
мы. Для запуска сеанса отладки выберите команду Run > Trace Into или нажмите клавишу F7. При этом программа вначале компилируется, а затем начинается ее пошаговое выполнение. Каждый шаг заключается в выполнении
очередной строки операторов, и происходит он при очередном нажатии на клавишу F7.
Во время отладки полезным может оказаться использование окна просмотра (Watch). Если нажать клавиши Alt+D для появления меню Debug и выбрать команду Add Watch (или нажать клавиши Ctrl+F7), то далее в появившемся окне можно набрать имя переменной, текущее значение которой необходимо узнать. Для добавления в окно просмотра других переменных можно повторно использовать команду Add Watch. Таким образом, используя возможность пошагового выполнения в сочетании с просмотром текущих значений переменных программы, можно провести достаточно подробный анализ ее работы. Это позволяет в случае неправильного поведения программы поставить ей достаточно точный «диагноз».
Просмотреть значение любой переменной программы можно, установив курсор на ее идентификатор и воспользовавшись командой Evaluate/modify. Здесь имеется также возможность по ходу выполнения программы изменить текущее значение выбранной переменной.
Метод пошагового выполнения программы неудобен, если исходный текст программы имеет большой объем, а программиста интересуют значения переменных только в избранных местах программы, да и то не всегда, а при выполнении определенных условий. В этом случае на помощь приходит команда меню Debug > Breakpoints, позволяющая разместить в тексте программы «точки прерывания». Для каждой точки прерывания указывается номер строки, где она устанавливается, условие, при выполнении которого программа приостановится в указанном месте, а также количество
прохождений точки до ее «срабатывания». Ставшие ненужными точки прерывания можно удалить, воспользовавшись той же командой. Завершить работу «зациклившейся» программы можно нажатием клавиш Ctrl+Break.
Наконец, обратим внимание на меню Tools. Здесь могут быть сконфигурированы вспомогательные утилиты, такие как упоминавшаяся выше утилита поиска grep и некоторые другие. Для просмотра сообщений утилит необходимо
активизировать команду Messages, открывающую в нижней части экрана специальное окно.
Контрольные вопросы
1. Каковы возможности и в чем преимущества интегрированной среды программирования языка Turbo Pascal?
2. Перечислите основные файлы среды программирования Turbo Pascal и их назначение.
3. Как запустить среду программирования Turbo Pascal?
4. В чем заключается назначение пунктов File, Edit, Run, Compile главного меню среды программирования Turbo Pascal for Windows?
5. В чем заключается назначение следующих опций пункта меню File: Open,
Save As ?
6. В чем заключается назначение следующих опций пункта меню File: New, Save, Exit?
7.Опишите значение информации в строке статуса окна редактирования интегрированной среды разработки.
8. Как откомпилировать файл программы?
9. В чем отличие пункта Run от пункта Compile интегрированной среды разработки?
10. Как посмотреть результаты выполнения программы в окне пользователя?
11.Каково назначение информационно-справочной системы среды программирования Turbo Pascal? Почему ее называют контекстно-ориентированной? Как осуществляется управление системой помощи?
12. Перечислите основные рекомендации по написанию программ.
13. Программные ошибки и группы диагностических сообщений.
14. Категории ошибок времени выполнения программы.
Дата добавления: 2015-01-13; просмотров: 1528;