Forum: Programmieren allgemein
by Matze,
11. Nov 2007
Hallo,
vielen Dank für deinen Beitrag. Dann müsste nun ja alles geklärt sein. :)
Speziell die Links sind super und werde ich mir näher ansehen.
Grüße
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Hallo Chemiker,
danke, das mit dem Zeiger wusste ich noch nicht. Dann weiß ich das nun auch. :)
Grüße
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Hi,
danke. Ganz steige ich noch nicht durch, cin ist komplexer als ich dachte.
do
{
while (! (cin >> eingabe))
{
cin.clear(); // das löscht die Fehler-Flags (welche auch immer das sind)
while (cin.get() != '\n'); // das liest die Zeichen im Puffer so lange ein (und entfernt sie daraus),
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Hallo Chemiker,
klasse, das funktioniert, herzlichen Dank. :thumb:
Dann mach ich mich mal dran, zu verstehen, was da nun genau passiert. ;)
Edit: Das ganze Zeugs mit ersterDurchlauf kann ich mir so auch ersparen, sehr schön.
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Achso, dennoch vielen Dank. Wenigstens ist das alte Problem mit der Endlosschleife nun gelöst und das andere ist bestimmt auch irgendwie behebbar. :)
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Das hatte ich auch bereits versucht, doch dann wird die Eingabe gar nicht erst akzeptiert.
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Hallo Matti,
hey super danke, das ist schon fast das, was ich brauche. Buchstaben werden nun abgefangen.
Ich muss jedoch die Eingabe 2x tätigen, damit diese akzeptiert wird. Hättest du dafür evtl. noch eine Lösung parat?
Ich habe auch schon solche Spielereien getestet, doch diese funktionierten ebenfalls nicht:
while (! cin.eof())
cin.get();
Forum: Programmieren allgemein
by Matze,
10. Nov 2007
Hallo,
ich habe nun auch Exoten wie
cin.ignore(cin.rdbuf()->in_avail());
versucht, doch das bewirkt alles nichts. Kann es sein, dass das mit cin gar nicht möglich ist oder muss das irgendwie gehen?
Grüße
Forum: Programmieren allgemein
by Matze,
9. Nov 2007
Hallo,
dankesehr.
@Oregon: Folgender Code ändert beim Verhalten jedoch nichts:
if (cin.bad())
{
cin.clear();
cin.ignore();
Forum: Programmieren allgemein
by Matze,
8. Nov 2007
Hallo,
ich versuche auf eine ganz primitive Art eine Eingabe auf einen gültigen Wert zu überprüfen. Die Variable "eingabe" ist vom Typ "unsigned int".
Das ist mein Code:
do
{
if (! ersterDurchlauf)
{