2010-09-19 17 views

Odpowiedz

60

Nie możesz usunąć ostatniego znaku.

Ale można uzyskać podobny efekt, zastępując ostatni znak. W tym celu należy przesunąć kursor konsoli do tyłu, wyświetlając znak "\ b" (backspace), jak pokazano poniżej.

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

więc wyjście byłoby

H

+9

+1, nigdy nie wiedziałem, że to zadziała. – Puppy

+3

Musisz uważać, aby cout nie zdecydował się na "przepłukanie" przed wstawieniem backspace. – rubenvb

+3

Nie mogę usunąć nowej linii za pomocą tej metody. – trusktr

5

nr

Nie można bez dostępu do API konsoli, że nigdy nie jest standardem.

Powiązane problemy