EOF? cin.get?
-
Hier erstmal mein Code:
#include <iostream> using namespace std; /* Tag 1 C++ Lernen Datum 1. 10. 2009 Author: Sandro E. */ int main(void) { int ch; cout << " > "; while( (ch = cin.get()) != EOF ){ if( (char)ch == '.'){ break; } if((char)ch == '\n' ){ cout << "\n > "; } else { cout << (char) ch; } } cout << "Programmende erreicht! \n"; system ("PAUSE"); return 0; }
Nun zur frage: Was bewirkt Zeile 17? Könnt ihr mir die Zeile mal bitte genauer erklären?
Danke
-
EOF heißt End Of File. Und die ganze Zeile heißt übersetzt:
Solange das Zeichen nicht EOF (Außerhalb der ASCII-Zeichen) ist, wiederhole.
EOF ist in stdio.h oder irgendwo noch so definiert:
#define EOF -1
EOF erreichst du in dem du: STRG + Z eingibst. Sollte so ausschauen: ^Z
lG
-
irgendwie muß ich bei
while( (ch = cin.get()) != EOF )
an
while( !(cin>>ch).eof() )
denken.
-
Warum kommen, wenn ich
while( (ch = cin.get()) != EOF )
durch
while( !(cin>>ch).eof() )
ersetze, dann etwas eingebe und RETURN drücke so viele komische Smileys?