You are not logged in.

  • Login

1

Wednesday, October 28th 2009, 8:40pm

Passwort Eingabeaufforderung

Ich habe gerade in der Schule angefangen mit C++ und Java zu Programmieren. Ich hab schonm einige Basics drauf, aber kann schneller lernen wenn ich ein Quellcode vor mir habe.
Desshalb meine Frage:
Wie sieht ein Quellcode in C++ aus für eine Passworteingabeaufforderung, also man etwas eingibt und er das Zeichen für Zeichen vergleicht?
Im Voraus schon mal Danke für die Antworten ;)
P.S. Wie mache ich das genau hier in dem Forum gibts irgendwo eine Readme Datei?^^

2

Thursday, October 29th 2009, 2:27pm

Moin,

zuerst brauchst du mal eine Variable, die deine Passworteingabe speichert. Möglich sind da C-Strings oder die string-Klasse.
Zum Einstieg würde ich dir mal die string-Klasse empfehlen. Um diese zu benutzen, musst du die Headerdatei string einbinden.

Dann liest das Passwort mit cin ein (Der Shift-Operator ist für die string-Klasse überladen, cin >> pw; funktioniert also). Dann vergleichst du die Eingabe und das Passwort mit string::compare(). string::compare() gibt 0 zurück, wenn die Strings gleich sind.

Ob das jetzt einen Lerneffekt hat, sei mal dahin gestellt - ich persönlich würde dir empfehlen, das nach und nach in der Schule/aus einem Buch zu lernen.

C/C++ Quellcode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <iostream>    // Ein- und Ausgabe (cout, cin)
#include <string>      // Für die Benutzung von string
 
using namespace std;        // Namespace std; damit du den ihn nicht vor string, cin oder cout angeben musst.
 
int main(int argc, char* argv[]) {
 
    string password = "mein_passwort";            // richtiges Passwort in der Variable password speichern...
    string input;                                 // Deklaration von input; hier wird gleich die Benutzereingabe eingelesen.
 
    cout << "Passwort: ";                              // Ausgabe von "Passwort: "
    cin >> input;                                      // Benutzereingabe (nur bis zum nächsten Whitespace!) in input speichern.
 
    if(!password.compare(input)) {                   // password.compare(input) vergleicht password mit input - sind diese gleich, wird 0 zurückgegeben.
        cout << "Zugiff gewaehrt.\n";                // richtige Eingabe
    }
    else {
        cout << "Zugriff verweigert.\n";               // falsche Eingabe
    }
 
    return 0;
}

Social bookmarks