在大多数终端中,如果您还没有打印换行符(或换行符; \n
),则打印回车符(\r
)会将光标重置为行,以便后续字符覆盖您当前行上已输出的内容。
但是,如果您没有输出足够的字符来完全覆盖该行的先前内容,则其余字符将保留在那里。因此,例如,以下伪代码:
print "goodbye"
print "\rhello"
会产生helloye
。
我想知道:有没有办法真正清除这些剩下的角色?我可以简单地跟踪它们,然后用空格覆盖它们,但那样,a)要求我跟踪它们,并且b)仍然有尾随空格字符,这不是理想的,我&#39 ; d不愿意这样做(我正在寻找一种可以在将来遇到这个问题时使用的通用解决方案)。任何建议都会很棒;谢谢!
答案 0 :(得分:1)
答案 1 :(得分:0)
很久以前,我使用了领先的回车器,效果很好。我只是在Linux Gnome Terminal程序上再次尝试了它,但似乎不起作用:屏幕上没有任何显示。将其改回使用尾随换行,并且我打印的每一行都会显示,但不会被覆盖。我怀疑缺少换行符是阻止它实际发送到显示器的原因。