Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15
  1. #1

    [C] - confronto tra stringhe

    ciao!
    come faccio a capire se due stringhe sono uguali? ho provato con ==, strcmp, ma niente, due stringhe con scritto ciao entrambe, il c me le reputa diverse...cm confronto 2 stringhe???aiutatemiiiiiiii!!!

  2. #2
    Con strcmp; se strcmp restituisce 0 allora le due stringhe sono uguali.
    @oregon: per una volta ti ho battuto sul tempo!
    Amaro C++, il gusto pieno dell'undefined behavior.

  3. #3
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Devi usare la funzione strcmp, ma devi usarla correttamente ... cosa hai scritto?

    P.S. @MItaly ... questa volta sei stato qualche secondo piu' veloce ...

  4. #4
    vi metto il codice

    Codice PHP:
    char ins[512],pass[512];
    printf("Inserisci la password:\t");
    scanf("%s",ins);

    while(!(
    strcmp(ins,pass)){
    system("cls");
    printf("Inserisci la password:\t");
    scanf("%s",pass);

    però anche facendo copia incolla con la stessa stringa me le segna come diverse...non so a questo punto mi chiedevo se non mi convenisse confrontarle cella per cella con un ciclo for...

  5. #5
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Due errori in grassetto ...

    codice:
      while(strcmp(ins,pass))
      { 
        system("cls"); 
        printf("Inserisci la password:\t"); 
        scanf("%s",ins); 
      }

  6. #6
    ma a me serve controllare che la 2 pass sia uguale alla prima...perchè all'avvio chiede la pass all'utente e la tiene finchè non la rimette uguale

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Spiegati meglio ... quello che chiedi e' esattamente quello che fa il codice con le correzioni ...

  8. #8
    ok, allora. l'utente avvia il mio programma e il programma richiede la password, dopodichè disabilita alcuni tasti per evitare che sia terminato e rimane in esecuzione finchè l'utente non reinserisce la stessa password, in modo da riabilitare i tasti...mi serve come blocca schermo, in poche parole...solo che il confronto tra stringhe non funziona...so che con password numeriche sarebbe più facile, ma sarebbe anche meno sicuro...mi aiutate x favore?

  9. #9
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,465
    Guarda che il codice che funziona e' quello che ti ho mostrato. Se qualcosa non va, mostra nuovamente le linee di codice che non vanno e fammi un esempio completo.

    La password conosciuta dove sta? Nella variabile pass?

    E la password inserita dall'utente? Nella variabile ins?

  10. #10
    Guarda che il codice di oregon fa esattamente quello che chiedi... finché (while) le due stringhe sono diverse (strcmp() restituisce un valore diverso da zero) il blocco while viene ripetuto.
    Amaro C++, il gusto pieno dell'undefined behavior.

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.