Har just börjat med c++ och blir något förbryllad här. Matar jag in ett icke-numeriskt värde nedan så blir det någon form av evighetsloop. För er som kan är det nog väldigt simpelt, men jag har ingen aning om hur jag ska lösa det. Hilfe bitte :)
#include <iostream>
using namespace std;
void main(){
int menuchoice;
do{
cout << "Vad vill du göra?\n";
cout << "1. Addera\n2. Subtrahera\n3. Multiplicera\n0. Avsluta\nDitt val: ";
cin >> menuchoice;
}while(menuchoice != 0);
}
hämtar inte in andra värden än int. Därför tilldelas inte menuchoice något nytt värde när cin >> menuchoice; exekveras. Och dessutom så stannar det som skrivits kvar i textbufferten... så samma sak händer om och om igen i loopen.
För att fixa problemet skulle du t.ex. kunna läsa en char (då du förmodligen inte behöver mer än 10 menyalternativ). Och jämföra den variabeln med t.ex. '0', '1' o.sv.