5 delphi pascal crt turbo-pascal
在TurboPascal程序中,我利用DOS 处理输出并使用Tab 控件字符在输出中形成列:
const Tab = #09;
...
Writeln(X, Tab, F(X));
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试pause
通过ReadKey
调用和使用Crt
模块添加类似功能时,已处理的输出中断,并且上面说明的语句开始编写通用Tab字形,而不是在制表位上形成列.
正如我所知,这种现象的来源是AssignCrt(Output)
在模块初始化时调用,它重新定义了Writeln
工作原理 - 它不再使用DOS输出,而是使用视频BIOS或直接视频内存访问(取决于DirectVideo
值).
我要如何扭转什么AssignCrt
呢?据我所知,文档中没有Crt
提供恢复正常输出的方法.
该Crt
文本文件驱动程序不支持的tab
字符turbo-pascal
.要恢复标准dos
驱动程序,请执行以下操作:
分配(输出, ''); //恢复标准dos输出
您可以稍后通过以下方式恢复Crt驱动程序:
AssignCrt(输出);