Bonjour, je voudrais laisser l'usager choisir un choix de menu entre 1 et 7 et afficher un message tant que le choix n'est pas bon et après avoir fait son choix ou si c'est un mauvais choix réafficher ce menu ensuite.
Voici ce que j'ai tenté:
Pour le moment j'essaie de déterminer si l'usager n'entre qu'un seul caractère pour pouvoir vérifier si ce caractère est bien entre 1 et 7 cela fonctionne mais je trouves bizarre que mon string.capacity() renvoit 0 quand il place l'entrée cin dans la string il réalloue la dimension de la string ?
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
17
18
19
20
21 int choixMenuPrincipal = 0; string choixClavier; cout << choixClavier.capacity() << endl; while (choixMenuPrincipal != 7) { afficherMenuPrincipal(); cin >> choixClavier; if (choixClavier.length() < 1) cout << "vous devez faire un choix." << endl; else if (choixClavier.length() != 1) { cout << " Faites un choix entre 1 et 7." << endl; } else cout << "vous avez entré un caractère" << endl; }
De plus quand j'appuie admettons sur ctrl-z il tourne en boucle et ne s'occupe plus de cin alors le menu se ré-affiche indéfiniment en défilant l'écran.
Merci
![]()
Partager