Zum Inhalt springen

Passwort-abfrage C++


Jay Peg

Empfohlene Beiträge

Hi leute,

ich würde gerne eine kleine Consolen Anwendung schreiben welche ein Passwort verlangt.

die eingabe des Passwortes sollte nicht angezeigt werden, bzw. mann sollte nur Sternchen sehen...

->Wie kann ich das realisieren??

->Gibt es da schon eine Funktion?

- muss ich dazu eine bestimmte Bibliothek includen??

Ich verwende den Dev-C++ Compiler ver. 4.9

Danke im Vorraus!

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hmmm...ist zwar keine schöne Lösung ( C und C++ gemischt) und nur schnell zusammengeschustert, aber Du kannst das ja modifizieren.

Das Prog bricht halt nach 10 Eingaben ab und gibt das Passwort aus.

#include <iostream>

#include <string>

#include <conio.h>

using namespace std;

int main(int argc, char** argv)

{

char myChar = 'a';

string pass = "";

while(1) {

myChar = getch();

pass += myChar;

if(pass.length() == 10)

break;

cout << "*";

}

cout << endl << pass;

cin.get();

return 0;

}

Link zu diesem Kommentar
Auf anderen Seiten teilen

Also meine Version find ich schoener :D

printf("Passwort:");
char passw[10];
int i = 0;
char c;

c = getch();

while(c != char(0x0D) && i < 10)
{
putch('*');
passw[i] = c;
i++;
c = getch();
}

passw[i] = 0x00;
printf("\nDas Passwort war:%s\n",passw);[/PHP]

Goos

Link zu diesem Kommentar
Auf anderen Seiten teilen

  • 2 Monate später...

Nuja...man nehme zum Beispiel eine ASCII Tabelle, oder man probierts aus indem man sich den Code der entsprechenden Taste holt.

z.B. mit


int c = getch();
c = getch();
printf("Sondertaste mit Code %d", c);
[/PHP]

...was aber nur bei Sondertasten funktioniert.....alle anderen muesstest in dem einfachen Beispiel doppelt druecken :)

Hier wuerdest dann fuer Enter eine 13 bekommen, was Hexadezimal notiert dann das 0x0D waere.

Goos

Link zu diesem Kommentar
Auf anderen Seiten teilen

Jetzt folgt ein Consolenprogramm, das euch den Zugang ins PENTAGON ermöglicht! *lol*

Aber vorsicht!

Nach dem dritten fehlerhaften Versuch, bricht es ab und piept! *g*

Das Programm benutzt Bibliotheken aus dem BORLAND C-BUILDER 5!

//---------------------------------------------------------------------------

#include <stdio.h>

#include <conio.h>

#include <string.h>

void main()

{

const char *pers_nr = "666"; //Zugangsnr (MAXIMAL 8 ZEICHEN)

const char *code = "drin"; //Zugangscode (MAXIMAL 8 ZEICHEN)

char *ab_pers; //Abgefragte Zugangsnr

char *ab_code; //Abgefragter Zuganscode

int i = 0; //Schleifendurchläufe

int codeguard; //Rückgabewert des Stringvergleiches

for(i=0;i<3;)

{

printf(" ENTRY TO PENTAGON\n");

printf(" ~~~~~~~~~~~~~~~~~\n");

ab_pers = getpass(" IDNR: ");

printf(" \n");

codeguard = strcmp(pers_nr, ab_pers);

if((codeguard > 0) || (codeguard < 0))

{

i++;

gotoxy(45, 30);

printf("!! WRONG IDNR !!\n");

gotoxy(45, 31);

printf("!! ACCESS DENIED !!\n ");

if(i == 3)

{

gotoxy(45, 33);

printf("!! SYSTEM ABBORTED !!\n\a ");

getch();

continue;

}

else

{

getch();

clrscr();

continue;

}

}//if

ab_code = getpass(" PASSWORD: ");

printf(" \n");

codeguard = strcmp(code, ab_code);

if((codeguard > 0) || (codeguard < 0))

{

i++;

gotoxy(45, 30);

printf("!! WRONG PASS !!\n");

gotoxy(45, 31);

printf("!! ACCESS DENIED !!\n ");

if(i == 3)

{

gotoxy(45, 33);

printf("!! SYSTEM ABBORTED !!\n\a ");

getch();

continue;

}

else

{

getch();

clrscr();

continue;

}

}//if

gotoxy(45, 30);

printf("!! ACCESS GRANTED !!\n\a ");

i = 3;

getch();

}//for

}//main

//---------------------------------------------------------------------------

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...