C# wenn bei Int eingabe Buchstaben eingegeben werden?
Guten Tag, also ich frage in meinem Programm nach das der Benutzer eine Zahl eingibt. Jetzt will ich es aber um Fehler zu vermeiden machen das wenn der Benutzer anstatt eines Int einen String oder einen Char eingibt das Programm nicht crashen soll, sondern dass dann was anderes geschieht.
2 Antworten
Console.WriteLine("Zahl eingeben: ");
string input = Console.ReadLine();
if(int.TryParse(input, out int zahl))
{
Console.WriteLine("Erfolg! Die Eingabe war {0}.", zahl);
}
else
{
Console.WriteLine("Misserfolg!");
}
Console.ReadKey();
Von gutefrage auf Grund seines Wissens auf einem Fachgebiet ausgezeichneter Nutzer
programmieren
dann mach bei der eingabe einfach eine while-Schleife und lass die Eingabe wiederholen, bis du eine Zahl hast
In Java würde ich versuchen, das ganze in einen integer zu parsen - und eine eventuelle Exception abfangen, wenn es fehlschlägt
Exception fangen würde auch in C# funktionieren, sollte man aber vermeiden, vorher prüfen ist besser.