TurboPascal プログラムでは、DOS処理された出力を利用し、タブ制御文字を使用して出力に列を形成します。
const Tab = #09;
...
Writeln(X, Tab, F(X));
ただし、呼び出しと使用されたモジュールpause
を介してのような機能を追加しようとすると、処理された出力が壊れ、上記のステートメントは、タブストップで列を形成する代わりに、一般的なタブグリフを書き始めました。ReadKey
Crt
私が理解したように、この現象の原因はAssignCrt(Output)
モジュールの初期化時の呼び出しであり、これはどのようにWriteln
動作するかを再定義します - 出力に DOS を使用しなくなりましたが、代わりにビデオ BIOS または直接ビデオ メモリ アクセス (DirectVideo
値に応じて) を使用します。
どうすれば何を元に戻すAssignCrt
ことができますか? ドキュメントから知る限り、Crt
モジュールには通常の出力を復元する手段がありません。