0
컴파일러 코드 :: 블록 운영 체제 (OS)를 비밀번호 마스킹 (중복되지 않음)
나는 내가 구축하고 내 코드를 실행 internet.When에 복잡한 것들과는 달리 아주 간단한 암호 마스킹 프로그램을 작성 -Windows "암호 입력"이 표시되지만 아무 것도 입력 할 수 없습니다. 그때 비밀번호를 입력하면 비밀번호 마스킹는 말은 그것이 **** 는 E 메일로 일어나는 것처럼 입력되는 동안 표시된다. (하나 * 각 문자)
#include <iostream>
#include <string>
#include <conio.h>
using namespace std;
int main()
{
string pass;
cout << "Enter password";
for (int i=0; i<100; i++)
{
char ch = getch();
if (ch == 13)
break;
if (ch == 8)
{
if (pass.size())
{
cout << "\b \b";
pass.pop_back();
}
}
else
{
cout << "*";
pass += ch;
}
}
cout << "pass = " << pass << '\n';
}
Windows 7의 표준 명령 프롬프트에서 TDM-GCC 5.1.0을 사용하면 오류가 발생하지 않습니다. (어떤 컴파일러/버전을 사용하고 있습니까?)'cin.sync_with_stdio (true)'를 시도해보고 차이가 있는지보기를 원할 수 있습니다. (Conio 물건은 장면 뒤에 제대로 작동하기 위해 여분의 이상한 억양이 필요합니다.) –
* 나는 인터넷에서 복잡한 것들과 달리 매우 간단한 암호 마스킹 프로그램을 작성했습니다. * - 인터넷상의 것들이 왜 " 복잡한". 콘솔 I/O는 생각만큼 간단한 것은 아닙니다. – PaulMcKenzie
Code :: Blocks **는 컴파일러가 아닙니다. 에디터 야. – tambre