Borland Pascal. Руководство пользователя

6cac1dc9

Трассировка программы


Трассировка программы во многом аналогичная ее выполнению по шагам. Единственное исключение состоит в том, что когда встреча- ется оператор вызова процедуры или функции, при трассировке эти процедуры и функции также выполняются по шагам, а при простом вы- полнении по шагам управление возвращается вам после завершения выполнения подпрограммы.

Например, чтобы выполнить трассировку кода в Примере 6.1, загрузите файл, затем выберите команду Run|Trace Into или нажмите клавишу F7. Когда вы в первый раз делаете это, управление переме- щается на оператор begin основной программы. Повторное нажатие F7 снова перемещает строку управления на оператор for. После этого нажатие клавиши F7 трассирует вызов функции Negate - строка вы- полнения перемещается на оператор begin в блоке функции. Если вы продолжаете нажимать F7, строка выполнения перемещается по функ- ции, а затем, когда вы дойдете до оператора end, возвращается к оператору вызова.

Формат вашей программы влияет на поведение строки выполнения при трассировке, хотя и не в такой степени как при пошаговом вы- полнении. Если код сформатирован как в Примере 6.1, то трассиров- ка оператора for приводит к выполнению 10 раз функции Negate. Ес- ли вы разобъете оператор for на две строки, как в Примере 6.2, то трассировка оператора end функции возвращает строку выполнения ту строку основной программы, которая будет выполняться следующей. Первые девять раз это снова будет вызов функции. В десятый раз строка выполнения перемещается на оператор end программы.



Содержание раздела