Oppure

Loading
19/03/09 15:55
Il_maca
dovrei creare un sistema di acquisizione di una password, mandando a video gli asterischi!!
quindi mi servirebbe un'acquisizione senza echo; ho provato la getch(), ma purtroppo usando questa funzione mi acquisisce il valore ascii di tutti i tasti, compresi i tasti funzione, i tasti speciali eccetera!! prima di incasinarmi con uno switch vorrei sapere se esiste un altro metodo! grazie..
aaa
19/03/09 20:45
pierotofy
Supponendo che tu stia programmando in Windows...

#include <iostream>
#include <string>
#include <windows.h>

using namespace std;

int main()
{
    HANDLE hStdin = GetStdHandle(STD_INPUT_HANDLE); 
    DWORD mode = 0;
    GetConsoleMode(hStdin, &mode);
    SetConsoleMode(hStdin, mode & (~ENABLE_ECHO_INPUT));

    string s;
    getline(cin, s);

    cout << s << endl;
    return 0;
}


Il codice semplicemente disabilita l'echoing per qualsiasi funzione di input.
Ultima modifica effettuata da pierotofy 19/03/09 20:47
Il mio blog: piero.dev
20/03/09 16:44
Il_maca
Postato originariamente da pierotofy:

Supponendo che tu stia programmando in Windows...

#include <iostream>
#include <string>
#include <windows.h>

using namespace std;

int main()
{
    HANDLE hStdin = GetStdHandle(STD_INPUT_HANDLE); 
    DWORD mode = 0;
    GetConsoleMode(hStdin, &mode);
    SetConsoleMode(hStdin, mode & (~ENABLE_ECHO_INPUT));

    string s;
    getline(cin, s);

    cout << s << endl;
    return 0;
}


Il codice semplicemente disabilita l'echoing per qualsiasi funzione di input.


grazie lo provo subito!!:rotfl::rotfl:
ok funziona alla perfezione, GRAZIE DAVVERO TANTO
Ultima modifica effettuata da Il_maca 20/03/09 16:56
aaa