Is it possible on Windows without using WinAPI?
You can also use cin.get() to delete last char
This code does exactly that:
std::cout<<"\b \b";
You may not remove last character.
But you can get the similar effect by overwriting the last character. For that, you need to move the console cursor backwards by outputting a '\b' (backspace) character like shown below.
#include<iostream>
using namespace std;
int main()
{
cout<<"Hi";
cout<<'\b'; //Cursor moves 1 position backwards
cout<<" "; //Overwrites letter 'i' with space
}
So the output would be
H
No.
You can't without accessing the console's api that is never standard.