Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 24
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    112

    [c++] istruzione switch,case: "raggruppati"

    ciao a tutti, mi chiedevo se c'è una specie di raggruppamento dei 'case:' di una instruzione switch per accorciare un po il codice. accorciare questo ad esempio:

    switch (n) {
    case 0:
    case 1:
    case 2:
    case 3:
    case 4:
    case 5:
    case 6:
    case 10:
    case 11:
    case 12:
    case 13:
    case 14:
    case 15:
    case 16:
    case 20:
    case 21:
    case 22:
    case 23:
    case 24:
    case 25:
    case 26:
    case 30:
    case 31:
    case 32:
    case 33:
    case 34:
    case 35:
    case 36:


    grazie
    buona serata!!!

  2. #2
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    No ... e in questo caso ti conviene utilizzare una if ...

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Ho scritto una cavolata.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da LeleFT
    Dipende... se ciascun caso deve svolgere una funzione diversa non ci puoi fare nulla.
    Se hai più casi diversi che devono eseguire la stessa istruzioni, basta inserire un solo case con i valori separati da virgola.
    Sicuro che funzioni?

  5. #5
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    No... ho confuso con un vecchio linguaggio di programmazione... troppo lavoro fa male!
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  6. #6

    Re: [c++] istruzione switch,case: "raggruppati"

    C'è chi fà così :
    codice:
          switch (n)   {
               case  0: case  1: case  2: case  3: case  4: case  5: case  6: case 10:  case 11:
               case 12: case 13: case 14: case 15: case 16: case 20: case 21: case 22:
               case 23: case 24: case 25: case 26: case 30: case 31: case 32: case 33:
               case 34: case 35: case 36:
    Ma in casi come questo è più indicata una if() o una serie di if(){..} else if(){...}.
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  7. #7
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480
    Originariamente inviato da LeleFT
    troppo lavoro fa male!

  8. #8
    Utente di HTML.it L'avatar di oregon
    Registrato dal
    Jul 2005
    residenza
    Roma
    Messaggi
    36,480

    Re: Re: [c++] istruzione switch,case: "raggruppati"

    Originariamente inviato da Samuele_70
    C'è chi fà così :
    codice:
          switch (n)   {
               case  0: case  1: case  2: case  3: case  4: case  5: case  6: case 10:  case 11:
               case 12: case 13: case 14: case 15: case 16: case 20: case 21: case 22:
               case 23: case 24: case 25: case 26: case 30: case 31: case 32: case 33:
               case 34: case 35: case 36:
    Che e' un modo compatto di scrivere i case piuttosto che in verticale. Ma NON cambia la sintassi del comando ...

    Ma in casi come questo è più indicata una if() o una serie di if(){..} else if(){...}.
    Esatto ... e' bene utilizzare bene il linguaggio ... se leggessi in un programma quella sfilza di case invece che la if ...

  9. #9

    Re: Re: Re: [c++] istruzione switch,case: "raggruppati"

    Originariamente inviato da oregon
    Che e' un modo compatto di scrivere i case piuttosto che in verticale. Ma NON cambia la sintassi del comando ...
    I 36 case credo l'autore del messaggio li abbia messi solo a titolo di esempio
    Penso che fino a 4-5 sia una sintassi accettabile ,
    soprattutto nel caso i valori non fossero consecutivi.
    (o forse lavoro troppo anche io)
    ... se leggessi in un programma quella sfilza di case invece che la if ...
    ... Direbbe molto del programmatore ...
    01010011 01100001 01101101 01110101 01100101 01101100 01100101 01011111 00110111 00110000
    All errors are undocumented features waiting to be discovered.

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2006
    Messaggi
    112
    userò una if.

    grazie a tutti
    ciao e buon fine settimana

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.