我有这个样本程序。它清除屏幕和滚动缓冲区。

#include <stdio.h>
int
main(void)
{
  printf("\ec");
  return 0;
}

但是我读过
并非所有终端都采用ANSI/VT100+转义序列。
所以我想用类似于
Gilles suggests。但是erase();和朋友似乎只清除屏幕而不是缓冲区。

最佳答案

如果你使用windows,你可以使用这个

#include <stdio.h>

int main(void)
{
  system("cls"); //call to system function to clear screen.
  return 0;
}

This thread有以下建议:
在要删除其scrollback的窗口中,将scrollback设置为零,然后将其返回到正常值(在您的示例中为15000)。
如果需要,可以将其绑定到密钥:
bind / eval "scrollback 0" "scrollback 15000"

在输入scrollback 0之后,也可以从会话发出C-a :命令。哦。

关于c - 清除屏幕和缓冲区,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14931337/

10-16 00:50