cerr
ist der C++ - Stream und stderr
ist das C-Datei-Handle, die beide die Standardfehlerausgabe darstellen.
Sie schreiben, um sie auf die gleiche Weise zu anderen Strömen und Datei schreiben Griffe:
cerr << "Urk!\n";
fprintf (stderr, "Urk!\n");
Ich bin nicht sicher, was Sie unter „erholen“ bedeutet in diesem Zusammenhang, der Ausgang geht an Standardfehler und das ist es. Das Programm soll sich danach nicht mehr darum kümmern. Wenn Sie beabsichtigen, es für später außerhalb des Programms zu speichern, lesen Sie den nächsten Abschnitt.
standardmäßig werden sie zu Ihrem Terminal gehen, aber der Ausgang kann an anderer Stelle wie mit etwas umgeleitet werden:
run_my_prog 2>error.out
Und, ja, der „Bildschirm“ -Ausgabe ist ein Stream (oder Datei-Handle), aber Das liegt in der Regel nur daran, dass und stderr/cerr
standardmäßig mit Ihrem "Bildschirm" verbunden sind. Umleitung wird dies wie im folgenden Fall betreffen, in denen nichts auf den Bildschirm geschrieben werden:
run_my_prog >/dev/null 2>&1
(heikle Dinge wie direkt zu /dev/tty
ungeachtet schreiben). Dieser Ausschnitt wird die Standardausgabe und den Standardfehler umleiten, um zum Bit-Bucket zu gelangen.
Sie müssen sich nicht entschuldigen, wenn Sie eine neue Frage stellen. SO ist für alle Fähigkeitsstufen gedacht. – paxdiablo