Leerung der std::cout-Ausgabe erzwingen
Dieses Problem kann auftreten, wenn der Puffer von std::cout nicht sofort geleert wird, was zu einer Ausgabe führt auf dem Bildschirm verzögert angezeigt werden. Hier sind einige Strategien, um dieses Problem anzugehen:
Verwendung von std::flush
Die einfachste Lösung besteht darin, std::flush nach der gewünschten Ausgabezeile einzufügen. Dadurch wird sichergestellt, dass der Puffer geleert wird, bevor die nächste Anweisung ausgeführt wird.
<code class="cpp">std::cout << "Beginning computations..." << std::flush;</code>
Verwendung von std::endl
Eine andere Möglichkeit besteht darin, std::endl nach dem zu verwenden Ausgabezeile. Dadurch wird der Puffer implizit geleert und auch ein Zeilenumbruchzeichen hinzugefügt.
<code class="cpp">std::cout << "Beginning computations..." << std::endl;</code>
Verwendung von std::flush mit E/A-Manipulatoren
Wenn Sie E/A verwenden B. std::setw oder std::setprecision, können Sie das Leeren des Puffers erzwingen, indem Sie nach dem Aufruf des Manipulators std::flush verwenden.
<code class="cpp">std::cout << "Beginning computations..." << std::setw(20) << std::flush;</code>
Alternative Druckmethoden
In manchen Fällen kann die Verwendung einer alternativen Druckmethode eine schnellere Ausgabe ermöglichen. Erwägen Sie die Verwendung von:
Das obige ist der detaillierte Inhalt vonWie erzwinge ich eine Flush-Ausgabe in „std::cout' von C?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!