Return ohne int Variable erkennen ?!
-
Ich kann nicht sehen, in welcher Hinsicht das Programm
#include <iostream> #include <string> using namespace std; int main() { char current, last='\n'; string eingabe; getline( cin, eingabe ); if( eingabe.empty() ) { std::cout << "Hello world!\n"; } else { std::cout << eingabe << "\n"; } return 0; }
die Anforderungen nicht erfüllt. Musst du mir jetzt erklären, was an dem Programm falsch sein soll.
-
darauf war mein post bezogen.
out schrieb:
Im Übrigen geht SeppJs Lösung auch perfekt. Er realisiert eine Zeichenkette, indem er öfters hintereinander nur 1 Buchstabe eingibt. Dabei musst du eben nur darauf achten, dass du das im Puffer liegende Enter nach einer Eingabe absorbierst.
#include <iostream> int main() { char current, last='\n'; while( std::cin.get(current) ) { if (last == '\n' && current == '\n') { std::cout << "Hello world!\n"; return 0; } else { std::cout << current; } last = current; // Du musst last schon immer setzen. } }
Nicht zu dem Code von dir, da du ja z.B. .empty() nutzt -> (so eine Lösung haben wir ja schon ) aber
So wie ich Sepp verstanden hatte, sollte das ja auch ohne sowas gehen. -> ich denke deins wird gehengruß guest054
-
int main() { char current, last='\n'; while( std::cin.get(current) ) { if (last == '\n' && current == '\n') { std::cout << "Hello world!\n"; return 0; } else { std::cout << current; if( current == '\n' ) return 0; } last = current; // Du musst last schon immer setzen. } }