撤消打印到命令行的换行符(\n)

Fra*_*ert 10 c c++ stdout

printf("Error %d\n", 1);
printf("\nStatus: %d%%", 50);
Run Code Online (Sandbox Code Playgroud)

版画

Error 1

Status: 50%
Run Code Online (Sandbox Code Playgroud)

在这个设置中,有没有机会Error 2\nError 1\n和之间插入\nStatus: 50%.我理解\r并且\b可以用来改变同一中的打印文本(例如,如果\nError 1和之间有单个Status: 50%),但是我可以更改前一行中的文本吗?

谢谢!

ybu*_*ill 7

@Ryan说的是什么.

解释原因:stdout是一些不必是终端的抽象流.它可以是文件,管道,套接字,打印机,文本到语音设备等等.在许多情况下,你要求做什么是没有意义的.因此,您需要一些专门用于终端的库.


Rya*_* Li 3

抱歉,你不能。

但是您可以发出系统调用来清除整个屏幕,例如system("clear")(取决于操作系统)。

ncurses或者像 Kos 在评论中提到的那样使用。