Прекратить программу висит и вернуться в Turbo Pascal 3

StackOverflow https://stackoverflow.com/questions/2683631

  •  30-09-2019
  •  | 
  •  

Вопрос

Я использую Turbo Pascal 3.01A на CP / M 2.2. Предположим, что моя программа Pascal, которую я запускаю, используя вариант меню R в Turbo Pascal, имеет ошибку и попадает в бесконечную петлю. Существует ли специальный персонаж управления, который прерывает мою программу и вернуться в меню Turbo Pascal?

Это было полезно?

Решение

Директива {u +} приведет к тому, что скомпилированный код будет проверить после каждого утверждения, был ли удар ключом. Если это так, клавиш будет проверен на ^ C; Если нет ^ c keystroke будет отбрасывать. Хотя это полезно позволяет программе быть прервана, она замедляет вещи, а также довольно раздражающе убивает способность к типу впереди. К сожалению, CP / M не предоставляет никаких прерываний клавиатуры (хотя некоторые реализации CP / M могут предоставлять один), поэтому нет никакой лучшей альтернативы. Было бы здорово, если имел возможность Turbo Pascal, чтобы реализовать свою собственную буферизацию клавиатуры, но я ничего не знаю.

Другие советы

В начале вашей программы Turbo Pascal 3 (под Program Заявление) является директивой компиляции {$U+}. Отказ Это должно позволить вам сделать Ctrl. + Слияние. Отказ Всегда используйте это только во время отладки вашей программы, поскольку она замедляет скорость выполнения вашей программы. Если он запускается хорошо, удалите его, а затем соберите свою программу.

Обычно в Turbo Pascal 3 компилятор имеет набор директив компилятора по умолчанию. «U - прерывание пользователя» обычно выключается по умолчанию.

Другое, что я нашел в моей программе Turbo Pascal совсем недавно, я использовал это во время отладки моей программы и по какой-то причине она не работала. Не уверен, что там происходит и обнаружил, что мне действительно пришлось удерживать эту комбинацию, чтобы получить программу для выхода. Не уверены, если бы у него было что-то связано с скоростью исполнения программы или если это было использование вложенного цикла, которая привела к этому возникновению.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top