Для выявления этого используйте окно
при последующих присваиваниях.
Для выявления этого используйте окно Watch (Просмотр). Наж-
мите клавиши Alt-F9, наберите parmonheap, затем нажмите Enter.
Оператор for обработает в цикле все параметры командной строки,
формируя связанный список и копируя каждую строку при ее поступ-
лении в динамически распределяемую область памяти. Указатель Head
указывает на начало списка, Tale - на последний узел в списке, а
Temp используется, как временная память для выделения и инициали-
зации нового узла. Так как строковые данные запорчены, нажмите
клавиши Ctrl-F7 и добавьте в окно Watch следующее выражение:
Tail^.Parm^
Это позволяет отслеживать строковые данные, хранящиеся в
последнем узле списка. Конечно, до инициализации на строке 207
это значение будет содержать "мусор".
Вместо того, чтобы выполнять программу по шагам, просто сле-
дите за окном Watch в конце каждой итерации. Переместите курсор
на строку 208 и нажмите клавишу F2, чтобы установить там точку
останова. Теперь, чтобы выполнить программу до точки останова,
нажмите клавишу F9. Если вы используете DOS версии 3.х, то в окне
просмотра вы увидите полный маршрут доступа к TPDEMOB.EXE (при
работе под управлением DOS 2.x вы увидите пустую строку, в этом
случае просто нажмите клавишу F9 и работайте дальше). Строка дан-
ных выглядит, как и требуется.
Нажмите клавишу F9, чтобы выполнить цикл еще раз. Данные
опять выглядят правильно. Теперь вы знаете, что строка копируется
в динамически распределяемую область памяти правильно. Можно ис-
пользовать окно Inspector (Проверка) и посмотреть, не повреждены
ли еще данные. Переместите курсор к Head и нажмите клавиши
Atl-F10 I.
TDeb 3.0 #2-3 = 161 =
Нажав клавишу Enter, посмотрите на значение, на которое ссы-