un petit test avec switch - C - Programmation
Marsh Posté le 01-03-2011 à 17:31:58
Parce qu'il y a pas de break après le case 2: 
A+,
Marsh Posté le 01-03-2011 à 17:36:01
salut, 
 
i valant 2 , le "switch" saute au "case 2 :". Cela signifie qu'il exécute le code à partir de cette ligne. Il "exécute" donc la ligne "case 3" qui n'est qu'un 'label' du switch, puis la ligne suivante qui est le printf("3\n" ); puis le break qui effectue un saut jusqu'à la fin du bloc switch, il effectue donc le "return 0". 
 
Ton code s'apparente à  
 
| Code : 
 | 
 
 
je pense que tu souhaitais obtenir le comportement suivant :  
 
| Code : 
 | 
 
 
 
auquel cas il aurait fallu écrire ça :  
 
 
| Code : 
 | 
 
 
 
Marsh Posté le 01-03-2011 à 17:22:56
Bonjour.
Est ce que quelqu'un pourrait m'expliquer pourquoi ce code affiche : 3
Merci d'avance.
Message édité par razuki le 01-03-2011 à 17:24:57