Au cours des derniers mois, je l'ai toujours été chemine lentement mais sûrement à C++, et j'ai rencontré un accroc que j'ai sens à comprendre. J'ai essayé de demander/lire/chercher, mais je n'ai jamais trouvé de réponse appropriée. Peut-être que c'est simplement parce que la question est difficile à poser.En comparant l'entrée de C avec tableau des valeurs
Ce que je suis en train de faire est à la fin de mon programme, ont la séquence de fin comparer la valeur d'entrée avec des valeurs dans un tableau. Dois-je boucler une séquence de comparaison? Y a-t-il un moyen plus simple de contourner cela?
#include <iostream>
#include <string>
using namespace std;
int main() {
string YesAnswers[5] = {"Y", "YES", "yes" "y"};
string Name;
string YN;
do {
cout << "Enter your name: ";
getline(cin, Name);
cout << "Your name is "<< Name;
cout <<"\nIs this correct? Y\N: ";
cin >> YN;
} while(YN == YesAnswers);
system("Pause");
return 0;
}
Notez que, alors que vous avez déclaré 'YesAnswers' comme ayant cinq éléments, vous attribuez seulement quatre cordes à elle. Aussi, vous bouclez aussi longtemps que l'utilisateur donne une réponse affirmative, qui je crois est le contraire de votre comportement prévu (je pourrais me tromper). –
D'ailleurs, vous pouvez juste laisser la taille si vous l'initialisez là: 'string YesAnswers [] = {" Y "," YES "," yes "," y "}; –