Lesen weitergeleiteten Eingabe mit C++
Ich bin mit dem folgenden code:
#include <iostream>
using namespace std;
int main(int argc, char **argv) {
string lineInput = " ";
while(lineInput.length()>0) {
cin >> lineInput;
cout << lineInput;
}
return 0;
}
Mit dem folgenden Befehl:
echo "Hello" | test.exe
Thes Ergebnis ist ein infinate Schleife drucken "Hallo". Wie kann ich es machen das Lesen und drucken von einem einzigen "Hallo"?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie wirklich wollen, volle Linien, verwenden Sie:
Wenn
cin
fehlschlägt, extrahieren, es nicht ändern Sie die target-variable. Also, was auch immer Zeichenfolge Ihrem letzten Programm erfolgreich gelesen wird, stecken inlineInput
.Müssen Sie prüfen
cin.fail()
, und Erik hat gezeigt, die bevorzugte Art und Weise zu tun, dass.