Ist es möglich, mit "cout" gedruckten Text zu ändern? Ich möchte es den aktuellen Prozentsatz von etwas zeigen lassen, ohne für jeden Prozentsatz eine neue Linie zu haben. Ist das möglich?C++ Ausgabe von "cout" ändern
Antwort
Dies funktioniert für mich:
std::cout << "1111";
std::cout << "\r";
std::cout << "2222";
\r
ist ein Carriage Return Symbol. Setzt den "Cursor" zurück an den Anfang der Zeile.
Alternativ können Sie \b
Zeichen verwenden. Dies ist die Rücktaste. Beim Ausdruck geht es ein Zeichen zurück.
Sie haben 3 '\ r' (Carriage Return) mehr als Sie tatsächlich benötigen (es sei denn Sie' '' b '', Backspace) – Hasturkun
Danke, das habe ich bereits bearbeitet. – detunized
Das richtige Zeilenende-Symbol ist "\ n", nicht "\ r". Die Standardbibliothek interpretiert "\ n" als CR-LF, LF-CR oder was auch immer für Ihre Plattform geeignet ist. Es gibt auch std :: endl, was zusätzlich das Spülen des Puffers erzwingt. –
Im Allgemeinen ist es nicht möglich. (Stellen Sie sich vor, dass die Ausgabe von cout
direkt an einen Drucker übergeben wird. Wie würden Sie es anweisen, die letzte Zeile zu "unprint"?) cout
ist ein Ausgabestrom, es macht keine Annahmen darüber, an welches Medium die Ausgabe gesendet wird, oder über die Fähigkeiten dieses Mediums. Bestimmte Tricks können in einigen Fällen erreichen, was Sie wollen, aber bei anderen scheitern. Wenn Sie etwas dynamischeres als die reine Ausgabe von Nur-Text wünschen, ist vielleicht cout
nicht das richtige Werkzeug zu verwenden.
Eine Sache, die Sie definitiv nicht von Cout bekommen, ist die Länge der Klemmenleitung. Da dies geändert werden kann, könnten Sie zu lange Zeilen verwenden, die (mit '\ r') das Drucken neuer Zeilen bei jedem Update verursachen. Wenn Sie eine bestimmte Plattform verwenden möchten, verwenden Sie plattformspezifische Funktionen, um die Terminalgröße zu erhalten (beachten Sie, dass Sie möglicherweise an kein Terminal angeschlossen sind, z. B. an Datei umgeleitet).
- 1. Keine Ausgabe von Cout
- 2. Unbuffered Ausgabe mit Cout
- 3. Keine Konsole Ausgabe auf cout
- 4. C++ cout hex Werte?
- 5. "cout << cout" - wofür steht die Ausgabe?
- 6. Std :: Cout Ändern des Variablenwerts
- 7. C++ Cout Drucken langsam
- 8. cout (Standardausgabe) in C++
- 9. C++ cout auto separator
- 10. Warum erscheint meine Cout-Ausgabe nicht sofort?
- 11. Löschen des Cout-Buffer (C++)
- 12. Wie kann ich Cout-Ausgabe einrücken?
- 13. unerwartete Ausgabe beim Übergeben von unsigned char an cout
- 14. C++ string cout Zeichen verloren
- 15. C++ Cout gibt undeclared Kennung
- 16. C++ Cout & Cin & System "Ambiguous"
- 17. cout Formatierung
- 18. Ändern von C++ cin
- 19. Format Cout für Zeiger
- 20. Weird Cout Verhalten
- 21. Warum std :: cout statt einfach cout?
- 22. eine string für cout
- 23. Ändern der Ausgabe von prop.table()
- 24. Wie deaktiviert man die Cout-Ausgabe in der Laufzeitumgebung?
- 25. C++ Typ Umwandlung Ausgabe
- 26. cout prints „-0“ anstelle von „0“
- 27. Cout einem Variablennamen zuweisen
- 28. C++ falscher Wert Druck cout Funktion
- 29. Erstellen einer Cout-Funktion in C?
- 30. Capture Cout von C++ durch Subprozess in meinem Pythonscript
cout soll nicht ein abstracton einer Konsole sein, obwohl die meisten Terminals das Wagenrücklaufzeichen gerne richtig interpretieren. – lijie
Was ist dann für die Konsole? – nebkat
Sie müssen Ihre Frage klären, es ist nicht klar, was Sie erreichen wollen und was "Veränderung" bedeutet. –