- •Раздел 3 Программирование
- •1 Структура программы на языке Pascal
- •2 Операторы языка Pascal
- •2.1 Оператор присваивания
- •2.2 Операторы ввода данных
- •2.3 Операторы вывода данных
- •3 Стандартные функции Pascal
- •3.1 Примеры составления линейной программы
- •4 Контрольные вопросы
- •5 Задание
- •Содержание отчета
- •1 Условный оператор if
- •2 Оператор варианта case
- •3 Контрольные вопросы
- •4 Задание
- •4.1 Задание по условному оператору
- •4.2 Задание по оператору варианта
- •5 Содержание отчета
- •1 Оператор цикла с постусловием
- •2 Оператор цикла с предусловием
- •3 Оператор цикла с параметром
- •4 Контрольные вопросы
- •5 Задание
- •6 Содержание отчета
- •1 Итерационные циклы
- •2 Программа итерационного цикла
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Краткая теория
- •1 Программа "цикл в цикле"
- •2 Программа "цикл и ветвление"
- •3 Программа "цикл в цикле и ветвление"
- •4 Контрольные вопросы
- •5 Задания
- •6 Содержание отчета
- •1 Одномерные и многомерные массивы
- •2 Обработка массивов
- •3 Контрольные вопросы
- •4 Задания
- •5 Содержание отчета
- •1 Описание функций
- •2 Параметры функции
- •2.1 Параметры-значения
- •2.2 Параметры-переменные
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Формат описания процедуры
- •2 Параметры процедуры
- •3 Контрольные вопросы
- •4 Задание
- •5 Содержание отчета
- •1 Средства и методы отладки программ
- •1.1 Понятие отладки
- •1.2 Разновидности ошибок
- •1.2.1 Ошибки этапа компиляции
- •1.2.2 Ошибки этапа выполнения
- •1.2.3 Логические ошибки
- •2 Выполнение программы по шагам и трассировка
- •2.1 Выполнение по шагам и трассировка
- •2.2 Остановка выполнения
- •2.3 Отслеживание и модификация
- •2.4 Понятие отладочного шага
- •2.5 Выполнение программы по шагам
- •2.6 Трассировка программы
- •2.7 Выполнение больших фрагментов
- •3 Отладочные выражения, точки останова
- •3.1 Понятие отладочного выражения
- •3.2 Просмотр выражений
- •3.2.1 Добавление просматриваемого выражения
- •3.2.2 Редактирование просматриваемых выражений
- •3.3 Вычисление и модификация
- •3.3.1 Вычисление выражений
- •3.3.2 Модификация переменных
- •3.4 Использование точек останова
- •3.5 Задание точек останова
- •3.6 Отмена точки останова
- •3.7 Модификация точек останова
- •3.8 Создание условной точки останова
- •5.2 Установка точек останова
- •6 Содержание отчета
3 Отладочные выражения, точки останова
3.1 Понятие отладочного выражения
Оба средства вычисление и просмотра работают на уровне выражений, поэтому важно определить, что считается выражением. Выражение состоит из констант, переменных и структур данных, скомбинированных с помощью операций и большинства встроенных функций. Почти все, что можно использовать в правой части оператора присваивания, может также использоваться в качестве отладочного выражения.
3.2 Просмотр выражений
Часто программисту необходимо отслеживать значение переменной или выражения при выполнении программы по шагам. Тогда полезно открыть окно просмотра Watches. Это окно IDE показывает переменные и их значения в каждый конкретный момент.
175
Для открытия окна Watches нужно выбрать команду Window|Watch. IDE открывает активное окно Watches без активных записей. Если выбрать переменную для просмотра, IDE автоматически открывает окно Watches (если это еще не сделано).
3.2.1 Добавление просматриваемого выражения
Для добавления в окно Watches переменной необходимо выполнить команду Debug|Watch|Add Watch или нажать клавиши Ctrl+F7. Отладчик открывает диалоговое окно, запрашивающее тип просматриваемого выражения. По умолчанию выражением считается слово в позиции курсора в текущем окне редактирования. Просматриваемые выражения, которые отслеживались ранее, сохраняются в списке протокола.
Если окно Watches активно, можно удалить текущее выражение, нажав клавишу Del или Ctrl+Y. Команда Debug|Watch|Remove All Watches удалит все просматриваемые выражения.
3.2.2 Редактирование просматриваемых выражений
Для редактирования просматриваемого выражения нужно сделать это выражение текущим, затем нажать клавишу Enter или выбрать команду Debug|Watch|Edit Watch. Отладчик открывает диалоговое окно, аналогичное тому, которое используется для добавления просматриваемого выражения, позволяющее отредактировать текущее выражение.
3.3 Вычисление и модификация
Кроме добавления просматриваемых выражений при выполнении программы, отладчик имеет средство, позволяющее в любой момент вычислять выражения и изменять на этапе выполнения значения переменных.
3.3.1 Вычисление выражений
Для вычисления выражения можно выбрать команду Debug|Evaluate/Modify или нажать клавиши Ctrl+F4. Отладчик выводит диалоговое окно Evaluate and Modify (Вычисление и модификация). По умолчанию слово в позиции курсора в текущем окне редактирования выводится подсвеченным в поле Expression (Выражение). Можно отредактировать это выражение.
После нажатия клавиши Enter, текущее значение выражения в поле Expression показывается в поле Result.
3.3.2 Модификация переменных
Во время отладки с помощью диалогового окна Evaluate and Modify можно изменить значение переменной. Для этого нужно ввести переменную в поле Expression, затем в поле New Value набрать новое значение. При изменении значений переменных следует иметь в виду следующее:
* Можно изменять только отдельные переменные или элементы массивов или записей, но не сами массивы и записи.
* Выражение в поле New Value (Новое значение) должно в результа-
176
те вычисления давать результат, совместимый по присваиванию с переменной, которой присваивается этот результат. Здесь необходимо руководствоваться следующим правилом: если присваивание дает при компиляции ошибку, то оно не является допустимым значением модификации.