Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    7

    [C++] - Verificare che l'input appartenga ad un insieme di valori predefiniti

    Salve ragazzi, avrei una questione che non riesco a risolvere.
    Ho una classe Risorsa con un membro Accesso che è una stringa C allocata dinamicamente (il linguaggio è C++ ma la stringa deve essere di tipo char*).
    Voglio che però la stringa inserita venga accettata solo se è "Limitato", "Pubblico", "Privato".
    (La classe prevede già le set e get)
    Ho provato una cosa tipo:

    codice:
    char buffer[50]="";
    do{
        cout<<"Tipo di accesso (Limitato, Pubblico, Privato): ";
        in.getline(buffer, 100);
        set_accetto(buffer);
         } while(!strcmp(buffer,"Pubblico") || !strcmp(buffer,"Limitato") || !strcmp(buffer,"Privato"));
    Ma così facendo mi fa inserire SEMPRE il tipo di accesso senza uscire mai. Suggerimenti?
    Grazie in anticipo.

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    codice:
    } while(strcmp(buffer,"Pubblico") && strcmp(buffer,"Limitato") && strcmp(buffer,"Privato"));

    Ma occhio all'input ... prevedi 50 caratteri e ne accetti al massimo 100 ?
    No MP tecnici (non rispondo nemmeno!), usa il forum.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2016
    Messaggi
    7
    Nah il fatto dei 50 caratteri è stato un errore che ho fatto qui perchè ho modificato leggermente il codice.
    Ora che ci penso è stata una cosa stupidissima, avevo copiato quella parte di codice da un'altra funzione che avevo realizzato per un altro tipo di controllo, giustamente col mio codice il ciclo si ripeteva solo se i valori inseriti erano quelli che effettivamente andavano bene. Errore da pivello :P
    Grazie mille della correzione

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 © 2025 vBulletin Solutions, Inc. All rights reserved.