Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    [C++]programma per password

    Ciao a tutti, sto facendo un programma per memorizzare le varie password dei siti internet al quale sono iscritto.

    codice:
    #include<iostream>
    #include<fstream.h>
    #include<string.h>
    #include<windows.h>
    using namespace std;
    int main ()
    {
        int i;
        string pass, sito, user, password, sito1, r;
        do{
        system("cls");
        cout << "Inserisci la password: ";
        cin >> pass;
        if(pass=="password")	    // se la password è corretta
        {
    	do{
    	system("cls");
    	cout << "Cosa vuoi fare: \n\n1)Cercare password \n2)Aggiungere nuova password \n3)Uscire \n\nScelta: ";
    	cin >> i;
    	switch (i)
    	{
    	    case 1:
    		break;
    	    case 2:
    		system("cls");
    		ofstream f("password.txt",ios::app);
    		if(!f) {
    		    cout<<"Errore nella creazione del file!";
    		    return -1;
    		}
    		cout << "Inserisci il sito: ";
    		cin >> sito;
    		cout << "Inserisci lo username: ";
    		cin >> user;
    		cout << "Inserisci la password: ";
    		cin >> password;
    		f << sito << "    " << user << "    " << password << "\n";
    		f.close();
    		cout << "\nSCRITTURA AVVENUTA CON SUCCESSO\n\n";
    		system("pause");
    		cout << "\n\n";
    		break;		
    	}
    	}while(i!=3);
        }
        else			    // se la password non è corretta
        {
    	system("cls");
    	cout << "La password inserita non e' corretta... Ritenta";
    	Sleep(1000);
        }
        }while(pass!="password");
        cout << "\n";
        system("pause");
        return 0;    
    }
    Fino ad adesso sono riuscito a fargli creare il file nel caso non esistesse e a fare memorizzare nel txt che mi crea nome sito, username e password (come si vede nel CASE 2). Il problema sorge nel CASE 1 dove dovrei fare il caso in cui si voglia cercare la password nel txt. Volevo quindi chiedervi, facendo un cin nel quale memorizzo il nome del sito, a cercare nel file e a far scrivere quindi nel mio programma la password e lo username.
    Grazie dell'aiuto

  2. #2

    Re: [C++]programma per password

    Originariamente inviato da andymark
    Ciao a tutti, sto facendo un programma per memorizzare le varie password dei siti internet al quale sono iscritto.

    codice:
    #include<iostream>
    #include<fstream.h>
    #include<string.h>
    #include<windows.h>
    using namespace std;
    int main ()
    {
        int i;
        string pass, sito, user, password, sito1, r;
        do{
        system("cls");
        cout << "Inserisci la password: ";
        cin >> pass;
        if(pass=="password")	    // se la password è corretta
        {
            ...
        }
        ....
        }while(pass!="password");
        cout << "\n";
        system("pause");
        return 0;    
    }
    le comparazioni tra stringhe non si fanno così: in quel modo tu compari gli indirizzi dei puntatori, non il contenuto.
    Per farlo devi usare la funzione strcmp()

    Per le altre cose, leggi IO con i file in C

  3. #3
    grazie dei suggerimenti, ora ci guardo. Per gli errori non conoscevo strcmp dato che ho iniziato a fare il c++ a scuola diciamo da un mese e mezzo quindi non siamo ancora arrivati a quelle cse. Ma io voglio portarmi avanti xd.

  4. #4
    ho guardato e sono riuscito a sistemare il strcmp ma non riesco a capire quello per cercare una parola in un txt

  5. #5
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802

    Re: Re: [C++]programma per password

    Originariamente inviato da lolide
    le comparazioni tra stringhe non si fanno così: in quel modo tu compari gli indirizzi dei puntatori, non il contenuto.
    Per farlo devi usare la funzione strcmp()

    Per le altre cose, leggi IO con i file in C
    Lui sta usando C++ e oggetti string e la funzione strcmp() funziona solo con array di char. Perché fargli usare pezzi di C in un programma C++?

    Ad ogni modo string ha il metodo compare(), può usare quello.

    E comunque la classe string ridefinisce l'operatore ==, pertanto confrontare due stringhe con stringa1 == stringa2 è corretto.
    http://msdn.microsoft.com/en-us/libr...(v=vs.80).aspx
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  6. #6
    grazie mille dell'aiuto per prima cosa. Riusciresti anche a darmi qualche suggerimento per il fatto di leggere il txt? Grazie

  7. #7
    Utente di HTML.it L'avatar di ShaleN
    Registrato dal
    Aug 2010
    Messaggi
    517
    Basta chiedere a zio Google.
    Le vie del Signore sono infinite. È la segnaletica che lascia a desiderare.
    La luce viaggia più veloce del suono. Per questo alcune persone sembrano brillanti finchè non parlano.
    Occhio per occhio uguale... occhio al quadrato

  8. #8
    anche guardando i risultato della ricerca non ho capito. Quello che mi è proprio oscuro più di tutto è come cercare nella riga il nome del sito internet

  9. #9
    up

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.