Heim >Backend-Entwicklung >C++ >Wie leite ich die C-Standard-Eingabe und -Ausgabe in externe Dateien um?
Ein- und Ausgabe in externe Dateien umleiten
Eingabe von der Standardeingabe (cin) und Ausgabe von der Standardausgabe (cout) in externe Dateien umleiten ist eine nützliche Technik zum Testen, Debuggen oder Analysieren des Programmverhaltens.
Um cin in eine bestimmte Datei umzuleiten (z. B. in.txt):
Um cout auf eine bestimmte Datei umzuleiten (z. B. out.txt):
Beispielcode:
#include <iostream> #include <fstream> #include <string> int main() { // Redirect cin to in.txt std::ifstream in("in.txt"); std::streambuf *cinbuf = std::cin.rdbuf(); std::cin.rdbuf(in.rdbuf()); // Redirect cout to out.txt std::ofstream out("out.txt"); std::streambuf *coutbuf = std::cout.rdbuf(); std::cout.rdbuf(out.rdbuf()); // Read and write to the redirected streams std::string line; while (std::getline(std::cin, line)) { std::cout << line << "\n"; } // Reset to standard input and output std::cin.rdbuf(cinbuf); std::cout.rdbuf(coutbuf); }
Hinweis: Sie können Eingabe und Ausgabe auch in einer einzigen Zeile mit umleiten die folgende Syntax:
auto cinbuf = std::cin.rdbuf(in.rdbuf()); auto coutbuf = std::cout.rdbuf(out.rdbuf());
Das obige ist der detaillierte Inhalt vonWie leite ich die C-Standard-Eingabe und -Ausgabe in externe Dateien um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!