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 :

les branchements inconditionnels


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut les branchements inconditionnels
    bonjour chers developpeurs,
    comme le titre l'indique mon sujet portera sur les branchements inconditionels;
    j'ai fait bien sur avant de poster une petite recherche ;j'ai trouvé qu'il ya plutot 5:
    1-break
    2-goto
    3-return
    4-exit
    5-continue
    j'ai lu la definition de chacune de ces fonctions mais j'ai rien pigé en fait
    alors si vous pouvez me donnez quelques exemples avec lesquels je peux voir le réel des choses;
    mercii

  2. #2
    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 s-ehtp Voir le message
    comme le titre l'indique mon sujet portera sur les branchements inconditionnels;
    j'ai fait bien sur avant de poster une petite recherche ;j'ai trouvé qu'il ya plutot 5:
    1-break
    2-goto
    3-return
    4-exit
    5-continue
    j'ai lu la définition de chacune de ces fonctions mais j'ai rien pigé en fait
    alors si vous pouvez me donnez quelques exemples avec lesquels je peux voir le réel des choses;
    merci
    Bah, l'éducation par l'exemple a ses limites (elle ne favorise pas l'analyse et la reflexion). Il est bon de savoir apprendre en lisant un texte (il n'y aura pas toujours quelqu'un pour te tenir la main...).

    Alors quels sont les mots ou expressions que tu ne comprends pas ?

  3. #3
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut
    Citation Envoyé par Emmanuel Delahaye Voir le message
    Bah, l'éducation par l'exemple a ses limites (elle ne favorise pas l'analyse et la reflexion). Il est bon de savoir apprendre en lisant un texte (il n'y aura pas toujours quelqu'un pour te tenir la main...).

    Alors quels sont les mots ou expressions que tu ne comprends pas ?
    par exemple pour goto elle est definit comme suit:branchement sur une ligne labillisée
    break:provoque la sortie immediate de la boucle ou switch
    exit:pemet de quitter le programme avec une valeur ;flush,et fermeture de fichiers
    bon les mots en rouge sont ceux que j'ai pas compris

  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 s-ehtp Voir le message
    par exemple pour goto elle est definit comme suit:branchement sur une ligne labiellisée
    "labellisée" Ca veut dire munie d'une étiquette (label en anglais)

    Un étiquette est un identificateur suivit de ':'.

    break:provoque la sortie immediate de la boucle ou switch
    switch-case est une des structures conditionnelles du langage C. Tu ne la connais pas ? Attention à bien lire les chapitres dans l'ordre. Quel est ton document de travail (livre, cours, site ?)
    exit:pemet de quitter le programme avec une valeur ;flush,et fermeture de fichiers
    to flush en anglais signifie 'vider', 'purger'... (to flush the toilets...)

    En informatique, ça s'applique aux données en attentes non traitées. Par exemple, l'écriture dans un fichier peut être différée. Elle est alors 'forcée' et les données se retrouvent bien dans le fichier.

    Ton document n'est pas fameux, car il mélange anglais, français et franglais...

  5. #5
    Membre éclairé
    Inscrit en
    Octobre 2007
    Messages
    285
    Détails du profil
    Informations forums :
    Inscription : Octobre 2007
    Messages : 285
    Par défaut
    vous pouvez alors m'indiquer un site la ou je peux bien comprendre l'utilité des branchements inconditionnels;merci
    @moderateurs:excusez moi pour les HS

  6. #6
    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 s-ehtp Voir le message
    vous pouvez alors m'indiquer un site la ou je peux bien comprendre l'utilité des branchements inconditionnels;merci
    @moderateurs:excusez moi pour les HS
    Ce n'est pas du tout hors-sujet.

    Les branchements inconditionnels servent à dérouter 'brutalement' l'exécution.

    Dans un switch case, 'break' permet de terminer l'exécution d'une branche. Son rôle est indispensable.

    Dans une boucle, 'break' sert à sortir de la boucle et 'continue' à retourner directement au début. C'est pas très propre comme programmation. On préfère généralement s'en tenir aux principes de la programmation structurée (toute boucle a au moins une condition de sortie). Mais ça peut faire gagner un peu de code et quelques cycles...

    Un goto sert à aller directement à une étiquette (dans les limites d'une fonction). Son rôle est contesté et va à l'encontre des principes de la programmation structurée. Il peut être utile pour simplifier certains traitements d'erreurs ou pour gagner quelques cycles (sortir directement de plusieurs boucles imbriquées.... Personnellement, je ne l'utilise quasiment jamais...

    Un return interrompt une fonction et force le retour à la fonction appelante. Autant sont rôle est naturel en fin de fonction, autant il est contesté quand il est au milieu du code. En effet, une sortie brutale peu se traduire par l'oubli de la libération de certaines ressources (mémoire, flux...) qui pourraient entrainer des dysfonctionnements à long terme. Certains programmes (serveurs...) tournent en 24/7..

    Un exit() interrompt complètement le processus en cours d'exécution. Il sert pour traiter de façon urgente une erreur grave. Son usage est exceptionnel.

Discussions similaires

  1. Les meilleurs cours et tutoriels C++
    Par Community Management dans le forum C++
    Réponses: 1
    Dernier message: 13/05/2015, 13h50
  2. Réponses: 6
    Dernier message: 18/06/2012, 09h54
  3. les branchements impossibles
    Par exe2bin dans le forum Général Python
    Réponses: 2
    Dernier message: 28/04/2010, 22h06
  4. Réponses: 3
    Dernier message: 02/10/2008, 21h03
  5. Obligatoire : lisez les règles du forum : MAJ 06/08/2010
    Par Anomaly dans le forum Mode d'emploi & aide aux nouveaux
    Réponses: 0
    Dernier message: 03/07/2008, 13h46

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