Программирование в среде Турбо Паскаль (Поляков, Круглов) - страница 23

Следующие два пункта главного меню Debug и Break/Watch содержат команды и опции, относящиеся к системе отладки среды программирования Турбо Паскаль.

1.3.6. Пункт Debug (установки отладчика)


В меню Debug представлено семь пунктов (рис. 1.23).

Рис. 1.23

- 36 -

Часть из этих пунктов управляет «поведением» компилятора, другие позволяют проводить определенные действия во время отладки. Два пункта работают при определенных обстоятельствах: пункт Call Stack используется только во время отладки, а пункт Find Procedure доступен только после того, как программа откомпилирована.

1.3.6.1. Оценка значений переменных Evaluate (Ctrl+F4). Во время отладки эта команда позволяет просмотреть значения переменных и выражений в программе, не обращаясь к окну Watch. При этом можно не только просмотреть значение переменной, но и задать новое, чтобы проследить, как изменится дальнейший ход программы.

После этой команды на экране появляется окно, содержащее три горизонтальных поля (рис. 1.24).

Рис. 1.24

В поле Evaluate вводится имя переменной или выражение, значение которого нужно посмотреть. Находясь в редакторе, можно подвести курсор к нужному имени переменной или к началу выражения в тексте и нажать Ctrl+F4. Если вслед за этим сразу нажать стрелку курсора вправо, то можно расширить взятую в окно Evaluate строку текста.

После нажатия клавиши ввода в поле Result появляется их текущее значение. Просмотр можно задавать в любом формате: десятичном, шестнадцатеричном, символьном и т.д. Делается это следующим образом: после имени переменной ставится запятая, а затем символ спецификации формата или их сочетание. Например, пусть объявлена константа

CONST

dec : Array [1..10] of Integer =

(10, 20, 30, 40, 50, 60, 70, 80, 90, 100);

Задав в окне Evaluate строку

Dec

- 37 -

в окне Result получим

(10, 20, 30, 40, 50, 60, 70, 80, 90, 100)

а задав строку по-другому:

dec[2], 4H

в окне Result получим значения

$14, $1Е, $28, $32.

Такой формат результата получен, так как был задан показ четырех значений массива dec в шестнадцатеричном формате, начиная со второго элемента. Приведем таблицу символов спецификации и их функций (табл. 1.2).


После получения значения переменной в окне Result можно нажать два раза клавишу управления курсором «вниз» или клавиши TAB, в поле New — набрать новое ее значение, а затем продолжать проводить отладку командами Trace Into, Step Over или Go To Cursor.

Таблица 1.2

Спецификация формата

Функция

$

Шестнадцатеричное значение. Имеет такое же действие, как спецификатор формата H

C

Символ. Задает специальный символ для управляющих символов (значения кода ASCII от 0 до 31). По умолчанию такие символы выводятся их номерами в таблице кода ASCII в виде #xx. Влияет на все символы и строки