I have an array of strings and I display the content to the user out on the screen with letters instead of numbers. So a. How, b. are, c. you, d. today. Then I ask the user to enter a selection by entering a, b, c, or d. How can I figure out what position in the array the user selected without doing a linear search (one by one)?? So if the user entered c, how can I manipulate it to know it was spot 2 since the array starts from zero.
Thanks for anyones help!!
C++ How do I find the the place within an array by using letters?
Hello,
Knowing that the ASCII code for 'a' is 97, you can cast the user's input (a char) to int and decrease 97. Then, if the user has entered 'a', it will be equivalent to the number 0.
Here's an example:
string strs[30]; //or whatever
//get your strings
char answer;
//print options here
cout %26lt;%26lt; "Please enter a choice: ";
cin %26gt;%26gt; answer;
//check input correctness
cout %26lt;%26lt; "You chose: " %26lt;%26lt; strs[(int)answer-97];
HTH,
Itay
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment