Ukrywanie hasła

0

Witam
Mam gotowy program symulacji bankomaty napisanego pod konsolę.
I muszę teraz zrobić, żeby podczas wpisywania były wyświetlane gwiazdki zamiast hasła.
Hasło jest zapisywane i odczytywane z pliku.Może ktoś ma jakiś pomysł jak to zrobić.

1

Wyłapujesz co użytkownik wpisał, zapisujesz do tablicy, wyświetlasz gwiazdkę.

1

proszę
zamiast conio.h spróbuj to
Jestem przekonany, że chodzi ci o c++ i w dodatku windows :) W przyszłości zaznacz to w temacie.

0

Zapomniałem dodać.Oczywiście chodzi mi o c++ niestety nie mogę otworzyć tego pliku conio.h

0

conio.h nie należy do biblioteki standardowej. Potrzebujesz go tylko po to, aby getch() uzyskać.Ppodałem ci alternatywę bez conio.h. Sprawdź czy działa.

0

Witam

Mam taki kod, który ukrywa to co wpisujemy pod gwiazdkami.
Tylko mam z nim dwa problemy backspace uznaje jako znak i nie działa mi porównywanie
pin z tym, który został pobrany z pliku .txt
Może ktoś ma jakieś pomysły i będzie mi w stanie pomóc.
Kody powyżej niestety nie działają mi lub źle je interpretuję.

 char kod[4], c;
    int i = 0;
	int a,b;
	ifstream iFile("./dane/pin.txt");
	iFile >> a;
	while((c = getch()) != 13)                                                               
    {
        cout << "*";
        kod[i++] = c;
		b=c;
    }
		if(c==a)
		{
		cout<<"i chuj"<<endl;
		system("pause");
		}
		else
		{
		cout<<"sdsdsdsd"<<endl;
		system("pause");
		}
}
1
#include <iostream>
#include <cstdlib>
#include <string>
#include <conio.h>
using namespace std;
int main()
{
    string strPass = "";
    char c;
    int StarNum = 0;
    int cntStar;

    while (c != 13)
    {
        c = (char)getch();
        if(c == 13){ break; }
        if(c == 8)
        {
            strPass = strPass.substr(0, strPass.length() -1);
            StarNum--;
            cntStar = StarNum;
            system("cls");
            while (cntStar > 0){ cout << "*"; cntStar--;}
        }
        else
        {
            StarNum++;
            strPass += c;
            cout << "*";
        }
    }

    cout << endl << strPass << endl;
    system("pause");
}

Brzydki i toporny kod z pierwszej strony google'a (źródło by KuroKitten ) :) Działa tak jak chcesz.

0

Dzięki wielkie.Temat można zamknąć.

1 użytkowników online, w tym zalogowanych: 0, gości: 1