Accueil
Rechercher:
sur developpez.com sur les forums
Forums | Tutoriels | F.A.Q's | Participez | Hébergement | Contacts
Club Emploi Blogs   TV   Dév. Web PHP XML Python Autres 2D-3D-Jeux Sécurité Windows Linux PC Mac
Accueil Conception Java DotNET Visual Basic  C  C++ Delphi Eclipse MS-Office SQL & SGBD Oracle  4D  Business Intelligence
FORUMS C FAQs C TUTORIELS C LIVRES C COMPILATEURS C SOURCES GTK+
next up previous contents index
Next: Erreur sur les tableaux Up: Le bêtisier Previous: Erreurs avec les priorités

Sous-sections

Erreur avec l'instruction switch

Oubli du break

L'instruction de sélection a pour syntaxe : instruction-sélection :
$\Rightarrow$ switch ( expression ) instruction
La notion d'alternative de la sélection n'apparaît pas dans la syntaxe : le programmeur doit les réaliser par une liste d'instruction étiquettée par case expression-constante et terminée par break. En cas d'oubli du break, une catastrophe s'ensuit.

Erreur sur le default

L'alternative à exécuter par défaut est introduite par l'étiquette default. Si une faute de frappe est commise sur cette étiquette, l'alternative par défaut ne sera plus reconnue : l'étiquette sera prise pour une étiquette d'instruction sur laquelle ne sera fait aucun goto.
switch(a)
   {
   case 1 : a = b;
   defult : return(1);       /*   erreur non détectée    */
   }

Une version diabolique de cette erreur est relatée dans le livre de Peter Van Der Linden : si la lettre l de default est remplacée par le chiffre 1, avec les fontes utilisées pour imprimer les sources, qui verra la différence entre l et 1 ?



Bernard Cassagne
1998-12-09
Responsable bénévole de la rubrique C : Arnaud Feltz (buchs) - Contacter par EMail :
Vos questions techniques : forum d'entraide C - Publiez vos articles, tutoriels et cours
et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones
Nous contacter - Copyright © 2000-2008 www.developpez.com - Legal informations.