Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 34
На сайте нет зарегистрированных пользователей

Пользователей: 13,367
новичок: lanoyac4
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

База данных междугородних телефонных разговоров на Delphi
Моделирование процесса поступления заявок в систему, состоящую из трёх Э...
Расчет обратной матрицы на Delphi + Пояснительная записка

Точки останова
Чтобы временно остановить вычислительный процесс в программе, можно задать точки останова - отмеченные в тексте места программы, при достижении которых она приостанавливает свою работу. Остановиться можно в любом месте программы, соответствующем исполняемым операторам. Минимальный шаг таких остановок - одна строка текста, поэтому нецелесообразно в тексте программы писать на одной строке несколько операторов.
Чтобы задать точку останова в программе, можно воспользоваться следующими приемами:
• поместить курсор мыши в начало строки, где надо задать точку останова, и нажать левую клавишу;
• поместить курсор текстового редактора в требуемую строку, вызвать локальное меню редактора и выполнить команду Toggle Breakpoint (F5) -"переключить" точку останова.
Таким образом задаются так называемые безусловные точки останова, для которых остановка выполнения программы будет происходить в любом случае, если компьютером выполняется первая команда, соответствующая строке текста с точкой останова. Для таких точек задается имя файла и номер строки, где установлена эта точка.
Помимо безусловных точек останова можно использовать и так называемые условные точки останова, для которых помимо указанной выше информации задаются также условие останова и (или) число проходов до останова.
Условие представляет собой логическое выражение, написанное по правилам Object Pascal. Останов в такой точке происходит только в случае, если логическое выражение даст значение True (истина).
Число проходов до останова говорит, на каком по счету попадании в данную точку останова произойдет действительный останов. Если это число равно нулю или единице, останов будет происходить при любом попадании в точку останова (если только не задано условие останова), при двух - на каждом втором, и т. д.
Для того чтобы задать условную точку останова следует поместить курсор редактора на строку, где нужно ее задать, и выполнить команду главного меню Run|Add Breakpoint, в результате чего появится окно редактирования точки останова. Первоначально в нем находится имя файла и номер строки, где должна быть установлена точка останова. Условие останова отсутствует, а число проходов равно нулю. Такая ситуация соответствует заданию безусловной точки останова. Если же сюда ввести условие останова и (или) число проходов, отличное от нуля и единицы, точка останова станет условной. Работа с этим окном завершается в этом случае нажатием кнопки New (Новая точка останова).
Все строки текста, в которых заданы точки останова, выделяются особым цветом. Если точка останова задана неправильно, цвет ее строки будет отличаться от цвета строки с правильно установленной точкой.
Просмотреть все заданные точки останова можно с помощью команды главного меню View|Breakpoints, в результате чего откроется окно точек останова.
Чтобы сбросить любую точку останова, можно воспользоваться следующими способами:
• поместить курсор мыши в начало строки, где надо сбросить точку останова, и нажать левую клавишу;
• поместить курсор текстового редактора в требуемую строку, вызвать локальное меню редактора и выполнить команду Toggle Breakpoint (F5) - "переключить" точку останова.
Можно сбросить и все точки останова одновременно. Для этого следует воспользоваться окном точек останова.
Любую условную точку останова можно сделать безусловной и наоборот, а также отредактировать условие и число проходов для условной точки останова.
Одним из способов здесь является следующий - сбросить предыдущую точку останова и затем задать новую.
Другой способ использует окно точек останова, из которого вызывается окно редактирования точки останова, с помощью которого вводятся' необходимые изменения. Работа с этим окном завершается нажатием кнопки Modify (Модифицировать).
Любую точку останова, а также все одновременно, можно сделать нерабочими, не сбрасывая их и оставляя в тексте, а при необходимости снова активизировать. Для этого используются локальные меню указанных окон. Строка текста программы с нерабочей точкой останова меняет свой цвет.
Когда при работе программы компьютер попадает на точку останова, выполнение программы прекращается, а точка останова становится видимой в текстовом редакторе и помечается треугольником в начале строки. На эту же строку переходит и курсор редактора.
Остановить программ можно также, запустив ее выполнение до курсора. Для этого следует воспользоваться командой главного меню Run|Run to Cursor (F4) либо командой Run to Cursor локального меню текстового редактора. В этом случае программа выполняется до тех пор, пока не встретится первая команда, соответствующая строке, на которой стоит курсор редактора (если только на пути не окажется рабочая точка останова - в этом случае программа остановится на ней). Строка, на которой произошел останов, изменяет свой цвет, а в ее начале появляется треугольник. Естественно, что в этом случае курсор редактора должен находиться на строке, соответствующей исполняемым операторам.
Еще один способ останова программы - выполнить команду главного меню Run|Program Pause, однако в данном случае заранее неизвестно, в какой точке программа остановится. При такой остановке в активной странице текстового редактора будет показана строка, где произошел останов (если останов произошел на операторе, написанном программистом), она будет помечена треугольником в своем начале, и на этой строке будет размешен курсор редактора.
После останова программы ее можно пустить дальше, используя следующие средства:
• выполнить команду главного меню Run|Run (F9), после чего программа будет выполняться либо до конца, либо до ближайшей точки останова;
• использовать любую трассировку программы (см. ниже);
• выполнить команду главного меню Run|Run to Cursor (F4), после чего программа будет выполняться либо до строки, где находится курсор редактора, либо до первой попавшейся точки останова.
Если дальнейшее выполнение программы бесполезно, можно прекратить режим отладки.







Опубликовал Kest December 27 2009 20:27:14 · 1 Комментариев · 15845 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Андрейка July 27 2012 13:54:38
smiley
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Cooltray
Архив значков
Время загрузки ...
Abc_component
Изучаем Ассемблер
Приемы программир...
PolyFlow
De Knop
Swing. Эффектные...
Стелтинг Стивен, ...
IconCut [Исходник...
PDPcheck
PHP: Полезные приемы
DiZsubmit
Моделирование дви...
Дешифратор содерж...
CoolControls v3.0...
TrayComp
Редактор текста (...
VksButton

Топ загрузок
Приложение Клие... 100774
Delphi 7 Enterp... 97832
Converter AMR<-... 20268
GPSS World Stud... 17014
Borland C++Buil... 14191
Borland Delphi ... 10290
Turbo Pascal fo... 7373
Калькулятор [Ис... 5984
Visual Studio 2... 5207
Microsoft SQL S... 3661
Случайные статьи
ГОЛОВА И ХВОСТ СПИСКА
Причина сканироват...
Протокол групповой...
Если забыли пароль
Эталонная модель п...
Первое приложение ...
Файлы не подчиняют...
Data segment too l...
Неявная загрузка м...
Нормализаторы вычи...
Удаление экземпляр...
Установка и удален...
Запись видео на ф...
Реализация сеансов...
listing (A)
Создание вертикаль...
Маршрутизации марш...
Терминология объек...
Управление вызовом...
Некоторые пытаются...
Определить слова, ...
Создание стандартн...
Как это настраивается
Модифицированные ...
Системы голосовани...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?