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 :

Rapidité d'excécution entre 'switch' et 'if'


Sujet :

C

  1. #1
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 23
    Par défaut Rapidité d'excécution entre 'switch' et 'if'
    Bonjour,

    j'aimerais savoir quel code est plus rapide entre :

    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
     
    if (a==1)
    {
       // série d'instructions A
    }
    elseif (a==2)
    {
       // série d'instructions B
    }
    .
    .
    .
    elseif (a==n)
    {
       // série d'instructions N
    }
    et

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    switch a
     
    case 1 : /*série d'instructions A*/; break;
    case 2 : /*série d'instructions B*/; break;
    .
    .
    .
    case n : /*série d'instructions N*/; break;
    Merci d'avance

  2. #2
    jmv
    jmv est déconnecté
    Membre chevronné Avatar de jmv
    Profil pro
    Enseignant
    Inscrit en
    Mai 2004
    Messages
    395
    Détails du profil
    Informations personnelles :
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Mai 2004
    Messages : 395
    Par défaut
    salut,

    A mon avis cela dépend tu compilateur, des tests, etc...
    Fait l'essai

    [Ajout]
    elseif n'existe pas en C. à remplacer par else if.
    [/Ajout]

  3. #3
    Membre confirmé Avatar de deeal
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    218
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 218
    Par défaut
    tu sais les compliteurs en general traduisent le switch comme tes else if en assembleur ( si tu mets tout le temps break; a la fin du bloc switch)
    juste que le switch c mieux lisible et ne peut etre utilise que pour les entiers, et c'est plus puissant que le if car tu executer plusieur bloc de code en switch ( si tu ne mets pas le break;

  4. #4
    Membre averti
    Inscrit en
    Avril 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Avril 2004
    Messages : 23
    Par défaut
    Merci , j'ai fait le test sur un grand nombre d'itérations, conclusion c'est pareil... (avec des breaks)

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

Discussions similaires

  1. relier des VLANs entre switchs moxa et HP
    Par dumoulex dans le forum Hardware
    Réponses: 2
    Dernier message: 15/10/2013, 16h23
  2. routage ospf entre switch de couche 3
    Par Furious68 dans le forum Hardware
    Réponses: 1
    Dernier message: 18/11/2012, 10h29
  3. Rapidité d'exécution entre BDD et programme
    Par sebnantes dans le forum VB.NET
    Réponses: 14
    Dernier message: 26/08/2010, 14h02
  4. Réponses: 3
    Dernier message: 05/09/2008, 15h23
  5. [Système] rapidité d'exécution if <> switch
    Par lalouve dans le forum Langage
    Réponses: 12
    Dernier message: 10/02/2006, 22h52

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