Was sind "cerr" und "stderr"?
Was ist der Unterschied zwischen Ihnen und wie werden Sie verwendet?
Kann jemand mir Beispiele?
Speziell, wie Sie "write" um den Strom in beiden Fällen und wie erholst du dich und Ausgabe (d.h. zum Bildschirm) der text, der geschrieben worden war?
Auch der "Bildschirm" die Ausgabe selbst ist ein stream, richtig? Vielleicht verstehe ich nicht, streams gut genug. Dies kann auch in einer Datei gespeichert werden, natürlich, ich weiß. Würden alle diese nutzen fprintf
/fscanf
usw?
InformationsquelleAutor der Frage Russel | 2010-07-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
cerr
ist der C++ - stream undstderr
ist die C-Datei-handle, beide repräsentieren die standard-Fehler-Ausgabe.Schreiben Sie zu Ihnen die gleiche Weise, die Sie schreiben, um andere streams und Datei-handles:
Ich bin mir nicht sicher, was du meinst, wenn du "wiederherstellen" in diesem Kontext, der Ausgang geht auf "standard error" und das Wars. Das Programm ist nicht dazu gedacht, sich darum kümmern, dass nach. Wenn du meinst wie man Sie zu speichern für später, von außerhalb des Programms, finden Sie im nächsten Absatz.
Standardmäßig, Sie werden an Ihrem terminal, aber die Ausgabe kann umgeleitet werden an anderer Stelle mit so etwas wie:
Und, ja, der "Bildschirm" die Ausgabe ist ein stream (oder Datei-handle), aber das ist in der Regel nur, weil
stdout/cout
undstderr/cerr
sind mit Ihrem "Bildschirm" standardmäßig. Die Umleitung wird sich dies, wie im folgenden Fall, wo nichts geschrieben wird auf dem Bildschirm angezeigt:(knifflige Dinge, wie das schreiben direkt an
/dev/tty
trotz). Das snippet leitet sowohl standard-output und standard-error zu gehen, um den bit-Eimer.InformationsquelleAutor der Antwort paxdiablo
stderr
ist einFILE*
und ein Teil der standard-C-Bibliothek.cerr
ist einostream
und ein Teil der C++ - Standardbibliothek.Ja, ist es. Aber es gibt tatsächlich zwei streams, die auf dem Bildschirm schreiben standardmäßig:
stdout
/cout
ist für die normale Ausgabe und diestderr
/cerr
ist für Fehlermeldungen. Dies ist nützlich für die Umleitung: Umleitungstdout
um eine Datei, aber immer noch Fehlermeldungen auf dem Bildschirm.InformationsquelleAutor der Antwort dan04