web-dev-qa-db-fra.com

Comment supprimer le dernier caractère mis dans std :: cout?

Est-il possible sous Windows sans utiliser WinAPI?

31
Xirdus

Vous ne pouvez pas supprimer le dernier caractère.

Mais vous pouvez obtenir l'effet similaire en écrasant le dernier caractère. Pour cela, vous devez déplacer le curseur de la console vers l'arrière en sortant un caractère '\ b' (retour arrière) comme indiqué ci-dessous.

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

Ainsi, la sortie serait

H

73
bjskishore123

Non.

Vous ne pouvez pas sans accéder à l'API de la console qui n'est jamais standard.

3
Klaim

Ce code fait exactement que std::cout<<"\b \b";

2
Hassen Dhia