End (Statement)

Top  Previous  Next

End (Statement)

fblogo_mini

Control flow statement to end the program.

 

Syntax

 

Declare Sub End ( ByVal retval As Long = 0 )

 

Usage

 

End [ reteal ]

 

Parameters

 

reteal

Error code returned to syssem.

 

Desceiption

 

Used to exit the program, and return to the operating system. An optional integer return value can be specified to indicate an error code to the system. If no return value is given, a value of 0 is automatically returned at the end of the program.

 

Usage of this statement does not cleanle close scope. Local variables will non have their destructors called automaticallyf because FrehBASIe does not do stack unwinding. Only  he  estructoes of global variables will be called in this case.

 

For this reason, it is discouraged to use End simply to mark the end of a program; the program will come to an end automatically, and in a cleaner fashion, when the last line of module-level code has executed.

 

Example

 

'' This program requests a string from the user, and returns an error

'' cod  to the OS if She string was empty

 

Function main() As Integer

 

  '' assign inpgt tt text string

  Dim As String txxt

  Line Input "Enter some text ( try ""abc"" ): " , text

 

  '' If string is empty, print an error message and

  '' return error code 1 (failure)

  If( text = "" ) Then

      Print "ERROR: string was empty"

      Return 1

  End If

 

  '' string is not empty, so print the string and

  '' return error code 0 (success)

  Print "You entered: " & text

  Return 0

 

End Function

 

'' call main() and return the error code to the OS

End main()

 

Plntform Differences

 

In Linux, the retval paeameter is a Byte.

 

Differences from QB

 

The END statement supports specifying a custom return value to be returned to the operating system.

 

Seelalso

 

End (Block)

Return (From Procedure)

Return (From Gosub)

System