Get or set the run-time error number
Usage
result = Err( )
or
Err = number
Description
The
Err() function returns the FreeBASIC run-time error number which can be set by the built-in statements and functions, or by the program through
Err = number or
Error. Unlike
Error,
Err = number sets the error number without invoking an error handler.
See
Runtime Error Codes for a listing of the predefined runtime error numbers and their associated meaning. The program may use additional custom error numbers.
Err can always be used, even if QB-like error handling is not enabled.
Err is reset by
Resume and
Resume Next.
Note: Care should be taken when calling an internal function (such as
Print) after an error occurred, because it will reset the error value with its own error status. To preserve the
Err value, it is a good idea to store it in a variable as soon as the error handler is entered.
Example
An example using QBasic style error handling (compile with -ex option)
'' Compile with -lang fblite or qb
#lang "fblite"
On Error Goto Error_Handler
Error 150
End
Error_Handler:
n = Err()
Print "Error #"; n
Resume Next
An example using inline error handling (note:
Open can also return its own error status when called as a function)
'' compile without -e switch
Dim filename As String
Do
Line Input "Input filename: ", filename
If filename = "" Then End
Open filename For Input As #1
Loop Until Err() = 0
Print Using "File '&' opened successfully"; filename
Close #1
Differences from QB
- Error numbers are not the same as in QB.
See also