Frage

Ich bin mit Turbo Pascal 3.01a auf CP / M 2.2. Angenommen, mein Pascal-Programm, das ich die R Menüoption in Turbo Pascal laufen verwenden, hat einen Fehler und geht in eine Endlosschleife. Gibt es eine spezielle Steuerzeichen, die mein Programm und Rückkehr zum Turbo Pascal Menü unterbrechen werden?

War es hilfreich?

Lösung

Die {U +} Richtlinie bewirkt, dass der kompilierte Code nach jeder Anweisung prüfen, ob ein Schlüssel Hit war. Wenn ja, wird der Tastendruck für ^ C geprüft; wenn nicht ^ C wird der Tastendruck verworfen werden. Während dies sinnvollerweise erlaubt das Programm abgebrochen werden, es verlangsamt Dinge nach unten und auch eher nervend tötet Type-Ahead-Fähigkeit. Leider CP / M bietet keine Art von Tastatur-Interrupts (obwohl einige CP / M-Implementierungen könnte man zur Verfügung stellen), so gibt es wirklich keine bessere Alternative. Es wäre schön, wenn Turbo Pascal eine Option hat seine eigene Tastatur Pufferung zu implementieren, aber ich weiß nicht jeder.

Andere Tipps

Zu Beginn des Turbo Pascal-3-Programms (unter der Program-Anweisung) ist Compiler Richtlinie {$U+}. Dies sollte Ihnen ermöglichen, eine STRG + C zu tun. verwenden Sie diese immer nur während Sie Ihr Programm debuggen, wie es die Ausführungsgeschwindigkeit des Programms verlangsamt. Wenn es in Ordnung läuft, entfernen Sie es und dann das Programm zusammenzustellen.

Normalerweise in Turbo Pascal 3 der Compiler hat eine Reihe von Standard-Compiler-Direktiven. Das „U - Anwender-Interrupt“ ist in der Regel standardmäßig deaktiviert.

Das andere, was ich in meinem Turbo Pascal-Programm habe gerade vor kurzem wurde ich dies wurde mit während mein Programm debuggen und es aus irgendeinem Grund funktionierte nicht. Nicht sicher, was los war dort und ich finde diese Kombination wirklich musste halten, um das Programm zu beenden zu bekommen. Unsicher, ob es hatte etwas mit der Ausführungsgeschwindigkeit des Programms zu tun, oder wenn es die Verwendung einer verschachtelten Schleife, die zu diesem auftretenden geführt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top