Funzione enum LINGUAGGIO C

di il
15 risposte

Funzione enum LINGUAGGIO C

Salve a tutti , sto provando ad utilizzare la funzione enum , però non lavora correttamente. Vi spiego in breve tutto.

Sto realizzando un progetto ,e devo creare una libreria. Tramite struct ho creato una struttura in cui vanno inseriti titolo del libro , autore ,e genere. Il genere però , il progetto dice , che è di tipo enum, quindi andare a scrivere dentro il typedef alcuni generi letterari che l'utente leggerà su schermo e premerà il tasto corrispondente al genere letterario che desidera scegliere.

L'unica cosa è che io ho creato una funzione che ritorna un tipo int, e questo ritorno vorrei che lo convertisse nel genere letterario.


Esempio. L'utente digita 1 , che corrisponde al genere letteraio Horror. Vorrei che si leggesse Horror e non 1 , sotto la voce genere libro.


Esiste un formattatore di campo che converte da int a char , oppure devo eseguire uno switch e dire a cosa corrsiponde 1 ecc!?!

Parliamo di linguaggio C


Grazie

15 Risposte

  • Re: Funzione enum LINGUAGGIO C

    Non esiste, puoi preparare un array di stringhe di char che contengono le varie descrizioni
  • Re: Funzione enum LINGUAGGIO C

    Devi utilizzare uno switch che ha per ingresso il tipo di enum, e nei vari case fai un printf con il genere
  • Re: Funzione enum LINGUAGGIO C

    Non serve lo switch, come avevo detto è più comodo un vettore di stringhe in cui usi il valore dell'enum come indice
  • Re: Funzione enum LINGUAGGIO C

    L'uso di uno statment switch, essendo in linea di principio meno efficiente e soprattutto più labour-intensive, ha senso unicamente laddove i valori della enum non siano strettamente contigui: il che, generalmente, è sintomo di errore di progetto o impreparazione laddove la codifica sia totalmente arbitraria, e si verifica invece solo in casi particolari, come nella mappatura fault-tolerant di comandi di particolari protocolli e in generale nell'interazione low level con vari device.
  • Re: Funzione enum LINGUAGGIO C

    Provato, verissimo. E' più chiaro e si evitano errori
  • Re: Funzione enum LINGUAGGIO C

    Hai provato ... Cosa?
  • Re: Funzione enum LINGUAGGIO C

    oregon ha scritto:


    Hai provato ... Cosa?
    ad usare l'array al posto dello switch
  • Re: Funzione enum LINGUAGGIO C

    Della struct?
  • Re: Funzione enum LINGUAGGIO C

    oregon ha scritto:


    Della struct?
    dovevo scrivere switch ho scritto struct, cmq si capiva
  • Re: Funzione enum LINGUAGGIO C

    Beh veramente no... Comunque importante che capivi tu...
  • Re: Funzione enum LINGUAGGIO C

    oregon ha scritto:


    Beh veramente no... Comunque importante che capivi tu...
    Permalosetto?
    Buon anno va
  • Re: Funzione enum LINGUAGGIO C

    No... Sono solo preciso... Che vuoi... è un "difetto" di alcuni vecchi del forum...

    Buon anno e buono studio
  • Re: Funzione enum LINGUAGGIO C

    oregon ha scritto:


    No... Sono solo preciso... Che vuoi... è un "difetto" di alcuni vecchi del forum...

    Buon anno e buono studio
    Grazie mille, buono studio anche a te
  • Re: Funzione enum LINGUAGGIO C

    Sono trent'anni che studio ma c'è sempre bisogno...
Devi accedere o registrarti per scrivere nel forum
15 risposte