Bonjour,
Comme écrit dans le titre, je voudrais savoir si l'instruction "switch" fonctionne avec des chaines de caractères.
Peut-on écrire :
switch(sens)
{ case "haut" : ... break;
case "bas" : ... break;
}
Merci d'avance.
Bonjour,
Comme écrit dans le titre, je voudrais savoir si l'instruction "switch" fonctionne avec des chaines de caractères.
Peut-on écrire :
switch(sens)
{ case "haut" : ... break;
case "bas" : ... break;
}
Merci d'avance.
Salut,
Non. L'instruction switch ne fonctionne qu'avec des types entiers (char, short, int et long). Pour réaliser ce que tu veux:
Thierry
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #include <string.h> /* ... */ if (!strcmp(sens, "haut")) { /* traitements */ } else if (!strcmp(sens, "bas")) { /* traitements */ } else { /* cas par defaut */ }
Comme a dit mugicka, non. Par contre, si ta première lettre est unique pour chaque cas, tu peux toujours utiliser cette première lettre pour ton switch.Envoyé par skulled
Jc
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 switch(sens[0]) { case 'h': ... break; /*cas haut*/ case 'b': ... break; /* cas bas */ }
Ou bien, faire un truc plus bizarre encore, si tu as une bonne fonction de hachage pour laquelle chaque chaîne utilisée retourne une valeur différente...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager