C++ Probleme bei der Eingabe der Zeichen, Programmabsturz.

konnichi

Lt. Junior Grade
Registriert
Aug. 2009
Beiträge
412
hallo Leute,
ich habe ein mini Spiel tictactoe zusammengebraut :)
Dabei muss man die Koordinaten 1 bis 3 als Zahlen eingeben, damit man ein Spielfeld belegen kann. Um Fehleingaben zu vermeiden, habe ich folgende Eingabeüberprüfung eingebaut:

if (a < 1 || a > 3 || b < 1 || b > 3 || spielfeld[a-1][b-1] == 'X' || spielfeld[a-1][b-1] == '0')
{
do {
cout << "Falsche Eingabe oder das Spielfeld ist bereits belegt! Nochmal eingeben:";
cout << endl;
cin >> a;
cin >> b;
cout << endl;
} while (a < 1 || a > 3 || b < 1 || b > 3 || spielfeld[a-1][b-1] == 'X' || spielfeld[a-1][b-1] == '0');
}


Der Code erfüllt seine Aufgabe gut, bis man versehentlich eine Buchstabe (z.b. E) als a und/oder b Wert eingibt. Wenn das passiert, stürzt das Programm ab.
Was soll ich machen? Was wäre die Lösung dafür?
Bin für jeden Tipp extrem dankbar :)
 
Zuletzt bearbeitet:
konnichiwa^^
Man kann auch ganz einfach die ASCII-Codes der Eingabe kontrollieren. Ansonsten einfach stur ein try und einen Fehler werfen.
 
Zurück
Oben