38

是否可以在不使用 WinAPI 的情况下在 Windows 上运行?

4

4 回答 4

95

您不能删除最后一个字符。

但是您可以通过覆盖最后一个字符来获得类似的效果。为此,您需要通过输出 '\b'(退格)字符来向后移动控制台光标,如下所示。

#include<iostream>
using namespace std;
int main()
{
    cout<<"Hi";
    cout<<'\b';  //Cursor moves 1 position backwards
    cout<<" ";   //Overwrites letter 'i' with space
}

所以输出将是

H

于 2010-09-19T13:47:59.180 回答
8

这段代码正是这样做的:

std::cout<<"\b \b";
于 2018-04-12T19:23:25.483 回答
3

您还可以使用cin.get()删除最后一个字符

于 2019-11-21T20:48:53.707 回答
2

不。

你不能不访问从来不是标准的控制台的 api。

于 2010-09-19T13:34:39.700 回答