Passwort eingabe
lima-city → Forum → Programmiersprachen → C/C++ und D
- 
    
    Hi,
 
 ich hab ein kleines Script in c geschrieben, bei dem man am Anfang ein Password eingeben muss. Wenn ich jetzt aber das richtige Passwort, Password123, eintippe, dann geht das nicht, obwohl die for-Schleife ja dann eigentlich beendet werden sollte, oder?
 
 Der Code:
 #include <stdio.h> #include <stdlib.h> int main(void) { char password[40] = "password123"; char str[40]; int i; FILE *fp; for (i = 0; i < 3 && str != password; i++) { printf("Password:"); gets(str); } if (str == password) { printf("ok"); getch(); } // ....... }
 
 K?nnt ihr mir weiterhelfen? Ist etwas falsch am code?
 
 mfg,
 hr
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage 
- 
    
    An zwei Stellen:
 for (i = 0; i < 3 && str != password; i++)
 und
 if (str == password)
 
 password ist ein char-Array und kann mit normalen Operatoren nichts anfangen (ausser Addressvergleiche). Benutze die Funktionen strcmp() und deren Verwandte, um zwei char-Arrays zu vergleichen.
 Doku zu strcmp():
 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_strcmp.2c_.wcscmp.2c_._mbscmp.asp
 Liste von Funktionen f?r char-Arrays:
 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vclib/html/_crt_string_manipulation.asp
- 
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden! lima-city: Gratis werbefreier Webspace für deine eigene Homepage