Ich schreibe ein einfaches OpenGL-Programm mit Qt Creator, die im Grunde ein QGLWidget erstellt, es zeigt und die Anwendungsschleife ausführt. Normalerweise mag ich das Debuggen mehr mit Diagnosemeldungen, die durch Präprozessorsymbole mit einem aktuellen Debugger und Uhren usw. ein- und ausgeschaltet werden. In Qt Creator haben wir eine Registerkarte namens Application Output, aber alles, was ich dort sehe, ist "Starten xxx.exe. xxx.exe mit Code 0 beendet ". Keine Ausgabe von std::cout
oder std::cerr
. Jetzt weiß ich, dass ich meine Anwendung von cmd.exe starten konnte (ja, ich benutze Windows, liebe es: P) und sehe die Ausgabe dort, aber ich wünschte, ich könnte die Ausgabe direkt von der IDE sehen. Ist das möglich? DankeKann ich die Programmausgabe in Qt-Creator sehen?
Antwort
Normalerweise funktioniert die Anwendung Ausgabe Fenster einwandfrei. Sind Sie sicher, dass Sie die Ausgabe von cmd.exe (haben Sie tatsächlich versucht?) Sehen? In der Regel ist es für UI-Anwendungen deaktiviert, um zu verhindern, dass Konsolenfenster geöffnet werden. Versuchen Sie CONFIG += console
. Überprüfen Sie auch, ob Sie qDebug() Nachrichten im Application Output sehen.
Alternativ können Sie die Einstellung "in Konsole ausführen" in den Projekt-> Ausführungsoptionen überprüfen. Dies öffnet ein neues Konsolenfenster und zeigt dort alle Konsolenausgaben an (wenn natürlich CONFIG += console
verwendet wird).
einfach #include <QDebug>
und dann qDebug
anstelle von cout
wie
qDebug() << "you just clicked ok";
auch diese
#include <QTextStream>
QTextStream out(stdout);
out << "\nHello World!\n";
Zugabe CONFIG += console
in der .pro-Datei nicht funktioniert für mich nicht funktioniert. Ich wundere mich warum?
Ich entdeckte gerade, dass ich "endl;" für cout wie zu arbeiten
cout << "print this" << endl;
definitiv die richtige Antwort! – DH1TW
Versuchen: -:
x-terminal-emulator -e
zu
xterm -e
- 1. Wie kann ich sehen qDebug Nachrichten, während in QtCreator Debuggen
- 2. Wo kann ich die Konsolenanmeldung OpenShift sehen?
- 3. Kann ich die C++ - Codestruktur sehen?
- 4. Ich kann die Ansicht nicht sehen 2
- 5. C Weird & interessante Programmausgabe
- 6. Python timeit und Programmausgabe
- 7. Wie kann ich meine Projekthierarchie in QtCreator einrichten?
- 8. Wie ändere ich die Einstellung der C++ Laufzeitbibliothek in QtCreator?
- 9. Wie verwende ich QuickFIX in QtCreator?
- 10. Wie kann ich die aktuell verwendete Quote in BQ sehen?
- 11. Ich kann die Git-Farbe in Cygwin nicht sehen
- 12. Wie kann ich die Fehler in console.developers.google.com sehen?
- 13. Endlosschleife kann ich nicht sehen
- 14. Kann ich einen BufferedReader sehen?
- 15. Ich kann die Schaltfläche nicht über die Vollbildansicht sehen.
- 16. Ich kann keine Aufgaben in Aptana sehen
- 17. Wie kann ich QtCreator bei Ausnahmen brechen lassen?
- 18. Qt: wann kann ich auf dynamische Eigenschaften von qtcreator zugreifen?
- 19. Programmausgabe mit einem separaten Paket
- 20. Keine Anwendung Ausgabe in QtCreator debug
- 21. Wie kann ich die Eingaben für eine LINQ-Abfrage sehen?
- 22. Wie kann ich die Kern-Android-Klassen sehen?
- 23. Kann ich die Beziehungen auch im Klassendiagramm von VS sehen?
- 24. Weise kann ich nicht sehen Die Eigenschaft Einstellung
- 25. Wie kann ich die Clientseite von HttpResponseMessage sehen?
- 26. Warum kann ich die HttpUtility.ParseQueryString-Methode nicht sehen?
- 27. Wie kann ich die Standardausgabe einer Java-Aufgabe sehen?
- 28. EntityFramework-Ausnahme: Wie kann ich die echte Abfrage sehen
- 29. Wie kann ich die ausstehenden Änderungen des Entity Framework sehen?
- 30. Wie kann ich feststellen, ob alle Schaltflächen, die ich sehen kann, in Großbuchstaben sind?
Extras> Optionen Unter der Registerkarte "Allgemein" der "Umwelt" das Terminal Eintrag ändern In Linux habe ich die Erfahrung, dass alle Konsolenausgaben angezeigt werden, in Windows wird nur qDebug konsistent im Fenster angezeigt. – rubenvb
Wenn Ihr Programm viele Ausgaben in qtcreator druckt, bleibt es nach dem Beenden oder Beenden des Debuggerziels lange Zeit hängen. Einige asinine Algorithmen in der Benutzerschnittstelle von qtcreator verursachen eine exponentielle Laufzeitverlängerung basierend auf der Anzahl von Zeilen der Ausgabe. So war es schon seit Jahren. – doug65536
Glaub es nicht? Probieren Sie Folgendes aus: int main() {while (1) std :: cout << "Test" << std :: endl; } ', lassen Sie das für ein paar Minuten laufen, und versuchen Sie, in das Programm einzubrechen oder es zu beenden. YMMV. – doug65536