Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тurbo Pascal 7+.doc
Скачиваний:
12
Добавлен:
24.12.2018
Размер:
10.09 Mб
Скачать

Отладка больших программ

Точки прерывания - Breakpoints. Будем считать большими программы, превышающие два размера экрана. Для них изложенный только что пошаговый режим может быть очень утомительным, так как слишком часто приходится жать F7. Вы можете заставить Паскаль при выполнении программы задерживаться не на каждой строке, а только на некоторых.

Поставьте курсор на одну из этих строк и нажмите Ctrl-F8. Строка станет красной. Это знак того, что при выполнении пpoграмма на ней остановится. Будем называть эту строку точкой прерывання или контрольной точкой.

Поставьте курсор на другую строку и снова нажмите Ctrl-F8, тогда строка станет точкой прерывания.

Так проделайте со всеми нужными вам строками. Затем можете обычным образом вывести на экран окна пользователя.отладчика.

А теперь обычным образом (Run -> Run или Ctrl-F9) запускайте программу. Программа будет выполняться до тех пор, пока не наткнется на какую-нибудь точку прерывания. На ней она остановится и продолжит работу, с того места, где остановилась ( при новом нажатии Ctrl-F9). И так далее.

Убирается точка прерывания точно так же, как ставится, - Ctrl-F8.

"Иди до курсора" - Goto cursor. Это еще один способ остановки в нужной вам строке. Поставьте курсор в нужную строку и нажмите F4. Программа будет выполняться до тех пор, пока не наткнется на строку с курсором. А теперь поставьте курсор в другую строку и снова нажмите F4. Программа продолжит работу с того места, где остановилась, и будет выполняться до тех пор, пока не наткнется на строку с курсором. И так далее.

Кстати, в процессе выполнения программы вы можете достаточно свободно переключаться между разными способами ее выполнения - F7, F4 или Ctrl-F9.

Использование Write и ReadLn. Если программа работает с графикой, то пользоваться вышеописанными средствами отладки неудобно, или нельзя. Еще до существования всех и всяческих отладчиков программисты пользовались вспомогательной печатью значений переменных. Действительно, вместо использования окна отладчика для просмотра переменных n и k вы просто можете в программу вставить дополнительный операторWrite(' n=',n,' k=',k). А вместо пошагового режима можете в нужных местах программы поставить ReadLn. Когда программа будет отлажена, вы уберете эти дополнительные операторы.

Нужно иметь в виду, что, когда экран с вашими картинками донизу будет заполнен информацией, напечатанной оператором Write, он начнет прокручиваться вверх, а вместе с ним вверх поднимутся и ваши картинки. Чтобы избежать этого, нужно сделать так, чтобы, не допечатав донизу, компьютер при помощи ReadLn сделал паузу (чтобы вы успели посмотреть результаты печати) и снова стал бы печатать сверху. А для печати сверху необходимо вставить в нужное место программы оператор GotoXY (см. раздел 15.7). А для этого нужно использовать модуль CRT (см. раздел 9.1) и вставить в начало программы оператор DirectVideo:=false (см. раздел 10.3).