Help Center›FreeBASIC
Open Conskeyword
Opens the console's standard input (stdin) or output (stdout) streams, using it as if it were file operations.
Syntax
Open Cons As [#]filenumber
Open Cons For Input As [#]filenumber
Open Cons For Output As [#]filenumber
Parameters
| Name | Description | |
|---|---|---|
filenumber | An available file number to bind to the stdin or stdout stream, which can be found with FreeFile. |
Return value
In the first usage,
Open Cons() returns a 32 bit Long: a zero (0) on success and a non-zero error code otherwise.Description
Open Cons opens the console's stdin or stdout streams for reading or writing. A file number is bound to the stream, which is used in subsequent file operations, such as Input #. An available file number can be retrieved with FreeFile.The
Input file mode opens the stdin stream for reading file operations, such as Line Input #, while the Output file mode opens the stdout stream for writing file operations, such as Print #. The Output file mode is the default if not specified.The stdin and stdout streams are the ones used when the calling process' input or output is redirected (piped) by OS commands, or when it is opened with
Open Pipe.To open both the stdin and stdout streams for file operations, a process must use multiple file numbers.
The normal screen commands, such as
Color and Locate, do not work in this mode, because they do not accept a file number.The
Tab keyword, regardless of the given column number, is always interpreted as a simple comma (,) (next output will take place at the next 14 column boundary).The error code returned by
Open Cons can be checked using Err in the next line. The function version of Open Cons returns directly the error code as a 32 bit Long.Warning: Presently,
Open Cons does not work as described above. Without any file mode specifier, a runtime error 1 (illegal function call) occurs. With the Input file mode specifier, the only input mode is well supported. But with the Output file mode specifier, input and output modes are simultaneously supported.Runtime errors:
Open Cons throws one of the following runtime errors:(
1) Illegal function call-
filenumberwas not free at the time. useFreeFileto ensure thatfilenumberis free.
Remarks
Usage
result = Open Cons( [For {Input|Output}[,]] As filenumber )
(or using the QB-like syntax,)
Open Cons [For {Input|Output}] As filenumber
Differences from QB
- In QB the syntax was
OPEN "CON:" FOR INPUT|OUTPUT AS [#] filenumber
See also
Example
Dim a As String
Open Cons For Input As #1
Open Cons For Output As #2
Print #2,"Please write something and press ENTER"
Line Input #1,a
Print #2, "You wrote : ";a
Close
Sleep
Reference
- Documented in KeyPgOpenCons.html