Tak jak w temacie. Znalazłem to: https://forum.pasja-informatyki.pl/6352/zamiana-tekstu-w-locie?show=6365#a6365
#include <iostream>
#include <conio.h>
#include <string>
int main()
{
unsigned char znak;
std::cout << "klawisz [ESC] wychodzi z programu." << std::endl;
std::string tekst = "";
do
{
znak = getch();
if(znak == 13) //Enter
{
std::cout << "\n" << tekst << "\n";
tekst = "";
}
else
{
tekst += znak;
std::cout << "*";
}
} while( znak != 27 ); //ESC
return( 0 );
}
ale ten kod umożliwia wpisywanie znaków specjalny no i nie można wymazywać.
Sam spróbowałem napisać coś takiego, ale nie wiem jak zrobić kasowanie znaków.
char character;
cout << "Password: ";
do
{
character = getch();
if(isalnum(character) && character != 75 && character != 72 && character != 77 && character != 80)
{
cout << "*";
user->password += character;
}
else if(character == 8)
{
// jakieś działanie
}
}while(character != 13);