Problem bei meinem HTML Programm (Komische Fehler)
-
Wikinger75 schrieb:
Wan kommt der neue stan****?
Meinst du eine neue Standarte? Da ist mir nix bekannt...

-
Ja genau den mein ich den neuen Standarte.

-
Nein, ich meinte, die Schnittstelle von
std::fstreamwürde erweitert, sodass sie auch mitstd::stringkompatibel ist. Amswitchändert sich soweit ich weiss nichts.Der neue C++-Standard sollte eigentlich 2009 erscheinen, aber ganz genau weiss das niemand...

-
Ahso ja denn ^^
Ma abwarten.THX Leuts
.
-
Ein weiterer für mich unbegründeter Fehler ist, wenn man eine ungültige eingabe macht, dieser zum default operator springt und sich in einer endlos schleife verhädert, wie ist dies möglich?
Wie kann ich dieses Problm beseitigen?
-
Wie sieht denn der dazugehörige Code aus (nur der relevante Teil)?
defaultist im Übrigen kein Operator, sondern eine Sprungmarke.
-
Das ist es ja der fehler pasier werähnd des programmlaufs, nicht zur compilerzeit.
Wenn ein ungültiger wert eingegeben wird, dann geht es in eine endlose-schleife.
-
Ja, ich hatte aber nach dem Code gefragt.
-
Der hat sich nicht verändert...
jedoch wenn ich richtige liege müsste der fehler hier sein, da er ja dort in die endlos schleife springt oder?
default: cout << "Ungültige Eingabe!" << endl; break;
-
Leer mal den Eingabepuffer. Bevor du auf die Eingabe wartest..
-
drakon schrieb:
Leer mal den Eingabepuffer.
Leichter gesagt als getan...

Hier, hier, hier und hier wurde neben den 314 anderen Threads das Thema besprochen. Aber vorweg: Eine wirklich saubere Möglichkeit gibt es dafür nicht.
-
Nexus schrieb:
drakon schrieb:
Leer mal den Eingabepuffer.
Leichter gesagt als getan...

Ich weiss, aber ich war zu faul alles herauszusuchen..

-
ehm würde ich mit clear nicht den inhalt der datei löschen?^^
-
Wikinger75 schrieb:
ehm würde ich mit clear nicht den inhalt der datei löschen?^^
Nein.
-
ähm ne dadran hat e snicht gelegen, ich hab die problematik mal mehr unter die luppe genommne.
Wenn ich eine ungültige zahl beim menü eingebe, dann läuft alles normal, doch wenn bei der eingabe ein string, eine zeichenkette eingegeben wird, erst das geht er in die endlos schleife.Logisch da ja ein int erwartet wird, wie knan ich dieses problem lösen?
Mit Exceptions?
-
Kann man irgentwie prüfen ob die int Variable ein char abekommen hat?
Mit if?
-
Schau mal hier:
http://www.cplusplus.com/reference/std/locale/
-
Zeile 46 - 47.
Da ist die eingabe, wenn ich nur ein Wort übergebe, dann geht es ,aber wenn ich in dem string ein Satz reinschreibe oder irgentwas hauptsache es hat leerzeichen, geht das programm in eine endlos schleife.
Wie kan man dieses Problem beseitigen?