一尘不染

使用C ++代码在Linux中清除终端

linux

好的,我一直在研究如何执行此操作,但是说我正在运行一个程序,该程序在终端上有很多输出,如何清除程序中的屏幕以使程序保持运行状态?

我知道我可以只输入clear终端,然后将其清除就可以了,但是就像我说的那样,对于这个程序,这对我来说会更有利。

我找到了可行的方法,但是我不确定它是什么或正在做什么。

cout << "\033[2J\033[1;1H";

那行得通,但是我不知道它是什么,如果您能解释一下,我将不胜感激。


阅读 410

收藏
2020-06-02

共1个答案

一尘不染

这些是ANSI转义码。第一个(\033[2JJ从上到下(2)清除整个屏幕()。第二个代码(\033[1;1H)将光标定位在行1,列1

所有ANSI转义均以序列开头ESC``[,具有零个或多个以分隔的参数;,并以命令字母(JH您的情况)结尾。\033是转义字符的C样式八进制序列。

有关完整的路演,请参见此处

2020-06-02