Referenz - OPEN ERR
Syntax: OPEN ERR [FOR Dateimodus] AS [#]Dateinummer
Typ: Anweisung
Kategorie: System
Mit OPEN ERR wird eine Eingabe von der Standardeingabe stdin sowie eine Ausgabe auf die Standardfehlerausgabe stderr geöffnet. Standardausgabe (stdout) und Standardfehlerausgabe können sich unterscheiden; in der Regel leitet stderr auf die Konsole weiter. Damit kann OPEN ERR z. B. verwendet werden, wenn die Standardausgabe mit OPEN CONS umgeleitet wird und dennoch eine Meldung im Konsolenfenster erscheinen soll, oder wenn ein Grafikmodus verwendet wird (siehe SCREENRES) und zu Debugging-Zwecken eine Statusmeldungen auf der Konsole ausgegeben werden soll.
- 'Dateimodus' wurde nur aus Kompatibilitätsgründen beibehalten und wird ignoriert.
- 'Dateinummer' ist eine Ganzzahl von 1 bis 255, über die später auf den Puffer zugegriffen wird. Sie darf nicht doppelt vergeben werden und verhält sich wie eine Dateinummer der OPEN-Anweisung.
LOCATE (Anweisung) und COLOR (Anweisung) haben keine Auswirkung auf die Ausgaben, die mit CONS oder ERR gemacht werden.
Beispiel 1: Verwendung zusammen mit OPEN CONS
' Quelltext ConsErrTest.exe
Dim As Integer stdout, stderr
stdout = FREEFILE
OPEN CONS FOR OUTPUT AS #stdout
stderr = FREEFILE
OPEN ERR FOR OUTPUT AS #stderr
PRINT #stdout, "HELLO"
PRINT #stderr, "FINISHED"
CLOSE #stdout, #stderr
Wird dieses Programm mit der Zeile
ConsErrTest>>ConErrTestOut.txt
aufgerufen, gibt FreeBASIC die Zeile "HELLO" in die Datei aus, während "FINISHED" auf dem Bildschirm erscheint. Ohne die Umleitungszeichen erscheinen beide Zeilen auf dem Bildschirm.
Beispiel 2: Verwendung zusammen mit SCREENRES
DIM AS INTEGER stderr = FREEFILE
DIM AS STRING text
OPEN ERR FOR OUTPUT AS #stderr
SCREENRES 640, 480
LINE INPUT "Geben Sie einen beliebigen Text ein: ", text
IF text = "" THEN PRINT #stderr, "Warnung: Es wurde kein Text eingegeben!"
PRINT "Sie haben folgendes geschrieben:"
PRINT text
SLEEP
Die Ausgabe der Warnung wird auf der Konsole ausgegeben, um damit den weiteren Programmablauf nicht zu stören.
Unterschiede zu QB: neu in FreeBASIC
Unterschiede zu früheren Versionen von FreeBASIC:
- OPEN ERR existiert seit FreeBASIC v0.15
- Ab v0.12 bis v0.14 existierte der analoge Befehl OPEN "ERR:" ...
Siehe auch:
OPEN (Anweisung), OPEN CONS, PRINT #, WRITE #, INPUT #, LINE INPUT #, CLOSE, Dateien (Files)
Weitere Informationen:
Wikipedia-Artikel zu den Standard-Datenströmen
Zusätzliche Informationen und Funktionen | ||||
---|---|---|---|---|
|