如何在运行控制台时更改文本

use*_*233 5 c++

可能重复:
如何在C++中从命令行删除打印的字符

我的问题是,如何在C++中运行控制台窗口时更改文本.例如.

如果我要显示这个.

cout<<"0%";
cout<<"25%";
cout<<50%";
cout<<75%";
cout<<"100%";
Run Code Online (Sandbox Code Playgroud)

它会产生5个不同的单词.如果我希望它显示0%然后25%并且需要创建一个新单词,IE将当前0%替换为25%,该怎么办?这甚至可能吗?提前致谢.

Mat*_*son 14

使用cout << number << '\r' << flush.

'\r'意思是"回车"(去行的开始"即flush手段"确保我刚才印刷现在达到输出,提供线的终点时,通常情况下输出仅打印.

编辑:如果您遇到输出长度变化的情况,例如倒计时,则必须用足够的空间填充输出以覆盖任何额外输出.例如cout << setw(3) << number ...cout << number << " " ...将工作.

但是,请注意,如果您的线路长度超过终端/命令窗口的宽度,它可能会变得混乱.