Keine Ausgabe von print-Anweisungen in Fortran

Habe ich zusammengestellt, ein Programm ausführen, nacheinander (nicht parallel) in fortran 90. Ich bin versucht, um das Programm zu Debuggen mit print-Anweisungen, um zu überprüfen, meine rostigen gdb fu. Ich bin kompilieren Sie die Dateien mit gfortran -c -O2 -ffast-math -ggdb. Jedoch, keine dieser Aussagen alles drucken:

print *, variablename1, variablename2
write(6,*) variablename1, variablename2
write(*,*) variablename1, variablename2

Das kompilierte Programm druckt nichts und wird so ausgeführt, als wenn die Aussagen gibt es nicht. Könnte ich sein, fehlt etwas, was einfach und offensichtlich?

  • Alle diese Ausgabe sollte. Wie sind Sie mit der ausführbaren Datei? In einem terminal-Fenster? Wahrscheinlich ist das problem in einem Aspekt, für die Sie noch keinen Informationen finden Sie hier. Ich schlage vor, die versuchen, eine kleinere test-Beispiel.
  • Du hast Recht, mit einfacher Programme, das funktioniert... könnte es alles sein, was dazu führen würde, dass Sie es nicht drucken?
  • Was erwartest du zu sehen? Sind deine Variablen holding leeren strings? Versuchen Sie, schreiben Sie auf eine nicht-preconnected Einheit und sehen, ob das fort.nn-Datei geöffnet wird. Was ist mit Pufferung? Hat Ihr Programm zum Absturz bringen, bevor der Puffer geleert werden? Verwenden Sie ein fflush () - Aufruf.
  • Anstatt den Aufruf von flush() können Sie auch eine Umgebungsvariable GFORTRAN_UNBUFFERED_ALL.
  • Danke!!! Diese sind hilfreich, führt. Ja-in diesem Fall sollten Sie integer Variablen, die initialisiert wurden, so sollte .gt.0, aber ich werde in diesen Fragen.
  • es hat geklappt! Danke!!!
  • Ich habe nicht versucht den flush-Aufruf, wird aber auch im Hinterkopf behalten für die nächste Zeit. Danke!
  • Sie sind herzlich willkommen! Verdammt, ich sollte geschrieben haben, eine Antwort statt eines Kommentars 😉
  • bitte! Und ich markieren Sie es als richtig.
  • Danke, aber es ist okay. Andrej schlug praktisch die gleiche. Und trotzdem war es eher wie ein Kommentar als eine Antwort.

InformationsquelleAutor hatmatrix | 2011-11-11
Schreibe einen Kommentar