IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

break de switch conditionnel


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut break de switch conditionnel
    Salux,

    Je me demandais si ceci etait possible, et si oui si c'était à eviter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    switch(valeur)
    {
     case CAS1 :
     case CAS2 :
      if (condition)
      {
        break;
      }
      /* sinon, descend*/
     case CAS3 :
     case CAS4 :
      /* action */
      break;
      /*...*/
    }

  2. #2
    Membre expérimenté Avatar de Sebou77
    Inscrit en
    Mars 2006
    Messages
    212
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Mars 2006
    Messages : 212
    Par défaut
    Jamais testé mais oui je dirais que c'est possible, tu as testé ?

    Mais sinon oui je dirais que c'est à éviter

  3. #3
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Pareil moi je dis que c'est possible, je vois pas pourquoi on pourrait pas.

    Après c'est vrai niveau lisibilité c'est pas tip-top.

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Gruik
    Je me demandais si ceci etait possible, et si oui si c'était à eviter :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
     
    switch(valeur)
    {
     case CAS1 :
     case CAS2 :
      if (condition)
      {
        break;
      }
      /* sinon, descend*/
     case CAS3 :
     case CAS4 :
      /* action */
      break;
      /*...*/
    }
    Joli ! Faut que je mette ma page à jour :

    http://emmanuel-delahaye.developpez.com/goret.htm

    Ca mérite un bon 7 ou 8...

  5. #5
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Ouais, c'est bien ce qui me semblait, mercix

  6. #6
    Expert confirmé
    Avatar de Skyounet
    Homme Profil pro
    Software Engineer
    Inscrit en
    Mars 2005
    Messages
    6 380
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : Etats-Unis

    Informations professionnelles :
    Activité : Software Engineer
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 6 380
    Par défaut
    Remarque il s'appelle Gruik

  7. #7
    Membre Expert
    Avatar de Gruik
    Profil pro
    Développeur Web
    Inscrit en
    Juillet 2003
    Messages
    1 566
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Juillet 2003
    Messages : 1 566
    Par défaut
    Le goret ça m'connait

  8. #8
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Gruik
    Le goret ça m'connait
    "Dans le cochon tout est bon !" (Mais j'en mange plus, snif, parait que c'est cancérigène...)

  9. #9
    Expert confirmé

    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    10 610
    Détails du profil
    Informations personnelles :
    Âge : 67
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 610
    Billets dans le blog
    2
    Par défaut
    Désolé de vous contredire, mais je ne crois pas que ça marche...

    Quand le switch est évalué, il donne un entier...

    Quand on fait

    c'est équivalent à :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ( (valeur == 1) || (valeur == 2) )
    Donc aucune raison d'avoir à l'intérieur de ça un valeur=3 ou valeur=4...

    Par contre, faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    CAS1 :
    CAS2 :
    CAS3 :
    CAS4 :
     
        if  ( (valeur == 1) || (valeur ==2) )
          {
              .......
              break ;
          }
        ......
        break ;
    oui ça ça marche .....

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSL-FO] Insérer un page-break conditionnel dans une FO:TABLE
    Par iback dans le forum XSL/XSLT/XPATH
    Réponses: 1
    Dernier message: 28/01/2015, 08h46
  2. switch -> default -> break ?
    Par oodini dans le forum Langage
    Réponses: 15
    Dernier message: 30/11/2011, 14h34
  3. Incident avec Break et switch
    Par Max_zen dans le forum Débuter avec Java
    Réponses: 5
    Dernier message: 11/07/2010, 19h16
  4. case switch sans break
    Par virtuadrack dans le forum C
    Réponses: 3
    Dernier message: 18/04/2007, 08h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo