Heim > Backend-Entwicklung > C++ > Wie kann ich Passwörter aus der Standardeingabe lesen, ohne sie wiederzugeben?

Wie kann ich Passwörter aus der Standardeingabe lesen, ohne sie wiederzugeben?

Susan Sarandon
Freigeben: 2024-12-22 16:24:10
Original
217 Leute haben es durchsucht

How Can I Read Passwords from Standard Input Without Echoing Them?

Passwörter aus std::cin ohne Echo lesen

Es besteht regelmäßig die Notwendigkeit, Passwörter aus der Standardeingabe ohne Echo der Eingabezeichen zu lesen. Um dies zu erreichen, ist es wichtig, das Echo auf std::cin zu deaktivieren.

Unterschiede zwischen Windows und UNIX

Die Methode zum Deaktivieren des Echos hängt vom Betriebssystem ab. In Windows werden die Funktionen GetConsoleMode und SetConsoleMode verwendet, während in UNIX-ähnlichen Systemen tcgetattr und tcsetattr verwendet werden.

Implementierung der Lösung

Das bereitgestellte Code-Snippet enthält eine betriebssystemunabhängige Funktion, SetStdinEcho, die das Umschalten des Echos für std::cin ermöglicht. Außerdem wird eine Beispielverwendung bereitgestellt, die zeigt, wie man ein Passwort ohne Echo liest und es dann echot, wenn der Benutzer die Eingabetaste drückt:

#include <iostream>
#include <string>

int main()
{
    SetStdinEcho(false);

    std::string password;
    std::cin >> password;

    SetStdinEcho(true);

    std::cout << password << std::endl;

    return 0;
}
Nach dem Login kopieren

Dieser Code stellt sicher, dass das Passwort des Benutzers während der Eingabe und Anzeige bei erfolgreicher Eingabe privat bleibt .

Das obige ist der detaillierte Inhalt vonWie kann ich Passwörter aus der Standardeingabe lesen, ohne sie wiederzugeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage