【发布时间】:2014-11-08 06:37:20
【问题描述】:
在终端中运行的某些应用程序可以擦除它们的输出。例如 当它告诉你等待时,它会显示一系列在不同长度之间交替的点。
如何在 C 中实现终端中的擦除输出?是通过反向换行完成的吗?
程序能否只擦除当前行中的前一个字符,而不是 stdout 中上一行中的字符?
谢谢。
【问题讨论】:
-
好吧,C 不懂屏幕的概念。所以任何代码都不能移植。根据您的需要,也许看看 conio.h 或 curses?我复制自:stackoverflow.com/questions/2347770/…
-
我认为您正在寻找以下内容。 stackoverflow.com/questions/2208126/… 以下是您要查找的代码。 stackoverflow.com/questions/1348563/…
-
嗯,这取决于终端类型。某些类型可以执行“破坏性”退格,其他类型需要执行 cursor-left+delete char,或者甚至 CR+ 重写整行。查看 termcap/terminfo 了解更多详情...
-
擦除当前行通常使用回车
\r字符。
标签: c