Hallo,
folgendes Problem
ich habe dieses Programm geschrieben ....
//---------------------------------------------------------------------------
#include <vcl.h>
#pragma hdrstop
#include<iostream.h>
#include<conio.h>
#include<string.h>
//---------------------------------------------------------------------------
#pragma argsused
int main(int argc, char* argv[])
{
// Variablendekleration
char passwort[20]="levent",eingabe[20]="",zeichen,gefunden='n';
int i=0, versuch=0;
// Eingabe
do
{
versuch++;
cout<<"\nBitte Passwort eingeben "<<versuch<<". Versuch ";
while (zeichen!=13)
{
zeichen=getch();
cout<<"*";
if (zeichen!=13)
{
eingabe=zeichen;
i++;
}
}
if (strcmp(eingabe,passwort)==0)
gefunden='j';
else
{
cout<<"\nPasswort nicht richtig";
zeichen='\0';
for
(i=0; i <=19; i++)
eingabe=zeichen;
zeichen=' ';
i=0;
cout<<"\n Bitte eine Taste druecken ";
getch();
}
}
while
(versuch<3 && gefunden=='n');
if
(gefunden=='j')
cout<<"\nSie haben Zugang zum System ";
else
cout<<"\nSie haben keinen Zugang zum System ";
getch();
getch ();
return 0;
}
//---------------------------------------------------------------------------
bei der Eingabe des Passwortes, erscheinen Sternchen was ja auch so sein soll, aber wenn ich mich vertippt habe und dann backspace drücke, wird das angebliche löschen auch als eine Eingabe erkannt, das heist ich kann kein buchstaben löschen. ich habe mir gedacht das dies mit einer rückwärtsschleife funktionieren könnte nur leider bekomme ich es leider nit auf die reihe ......