C语言:输入密码时先显示正常数据,300毫秒后变成*号,用Sleep和getch()要怎么写?

2024-11-18 07:28:05
推荐回答(3个)
回答1:

#include
#include
using namespace std;
#随手写了一个,自己处理一下回退键逻辑
std::string szStar = "";
char c = NULL;
int i = 0;
do
{
c = _getch();
if (c == '\r')
{
break;
}
cout << c;
szStar.assign(i+=1, '*');
Sleep(300);
system("cls");
cout << szStar.c_str();
} while (c != '\r');

回答2:

要么清屏要么用控制台API函数
或者试试向输入流写回退键

回答3:

说实话,我连个连英文怎么念都不会