C++ Wo ist der fehler ?

Am besten mal mit Stringstream beschäftigen. Das ist wohl die sauberere Lösung:
http://cplus.kompf.de/artikel/stream4.html
Ergänzung ()

Btw.: Falls C++ deine erste Sprache ist, welche du Erlernen willst, dann solltest du dich nach leichteren Alternativen umschauen. Es gibt eine Reihe von guten Alternativen; ich kann z.B. Python empfehlen :-) Da wirst du quasi zum richtigen Einrücken des Codes gezwungen, weil es keine klassische Klammerung von Blöcken gibt, sondern die Programmblöcke über die Einrückung des Codes realisiert werden.
 
@mvBarracuda danke :)

aber eine frage noch wieso schreibst du std::cout wenn du oben schon using namespace std hast^^

edit: habe mit c angefangen und mache jetzt c++ :)
 
Zuletzt bearbeitet:
Das using namespace std war noch drin, als ich deinen Code als Basis benutzt habe. Ich bevorzuge die Langform via std::, habe aber schon jahrelang keinen C++ Code mehr geschrieben. So gesehen wars mal wieder ne schöne "Übung" :-)
 
ahso :)

kanns du mir vllt sagen wieso er bei meiner version er bis 100000 gezählt hat.
weil ich seh da einfach keine logik er müsste rausspringen aber er zählt lieber :D
 
Elbrathil schrieb:
Ja, stimmt wohl.

das mit dem cin>>y&&ch versteh ich aber auch nicht mehr so ganz...


Der Ausdruck macht absolut überhaupt keinen Sinn. Aufrgund der Operatorenreihenfolge wird zuerst der Teilausdruck cin >> y ausgewertet. Operator >> ist für einen std::istream so deklariert, daß er eine Referenz auf ein std::istream-Objekt zurückgibt. Als nächstes wird dann versucht, diese Referenz mit ch zu verunden (&&). Da es normalerweise keine Operator-&&-Überladung gibt, die einen linksseitigen Operanden vom Typ std::istream akzeptiert, wird der Compiler zunächst versuchen, die std::istream-Referenz in einen Typ zu konvertieren, auf den Operator && angewandt werden darf. std::istream ist in ein bool konvertierbar (damit man z.B. mit if ( myStreamObject ) testen kann, ob der Stream geöffnet und nicht im Fehlerzustand ist). Damit gibt also die logische Verundung am Ende wieder ein bool zurück, das dann aber nicht mehr angeschaut wird -> daher sinnlos.
 
Zuletzt bearbeitet:
und wie kann man dan 2 variabeln auf einmal einlesen ?
 
Der Benutzer kann doch nur eine Eingabe machen. Wenn er natürlich sowas wie "12 15" eingibt und du jede einzelne Zahl in eine eigene Variable lesen willst, dann musst du auf dem eingelesenen String eine entsprechende String-Operation ausführen, zum Zerlegen. Die zerlegten Einzelwerte kannst du dann in verschiedene Variablen speichern.
 
Zuletzt bearbeitet:
@Hancock nope das läuft net

hab jetzt mit strings versucht und es läuft 1 A vielen dank euch :)
 
@sxc, ich hab grad gesehn, ich stand gestern etwas auf der Leitung ^^
Du meintest die Ausgabe des Programms. Da hast du natürlich recht, da steht dann 8+3=8 :)
 
Zurück
Oben