'''This page is maintained for historic purposes. The usage of the DECLARE keyword explained below isn't required/implemented in QB64. QB64 ignores any occurrences of DECLARE SUB/FUNCTION when older code is compiled. For the modern usage of the DECLARE keyword (for external C procedures), see [[DECLARE LIBRARY]].'''

----


The '''DECLARE''' statement is used to tell Qbasic that a [[SUB]] or [[FUNCTION]] is to be used in the program with specific parameter types.


{{PageSyntax}}

:: '''DECLARE''' {SUB|FUNCTION} ProcedureName ([''parameter'' [[AS]] type[, ...]])


* '''QB64 ignores DECLARE SUB or FUNCTION statements, so define the parameter [[TYPE]]s in the SUB procedure!'''
* Parameters MUST be placed in parenthesis separated by commas when necessary.
* Empty parenthesis are required when no parameters are used.
* Declarations should be placed at the top of the main program code after {{KW|Metacommand}} and {{KW|DEFINT|DEF}} statements if used.
* Parameters can be defined in a DECLARE statement [[AS]] [[INTEGER]], [[SINGLE]], [[DOUBLE]], [[LONG]], [[STRING]] or [[ANY]].
* The Qbasic IDE can automatically DECLARE a SUB or FUNCTION once the procedure is called and the module is Saved.
* If a procedure is never called, it will not be automatically be DECLAREd by the Qbasic IDE when the program is saved.



''See also:'' 

* [[SUB]], [[FUNCTION]]
* [[CALL]], [[BYVAL]]
* [[DECLARE LIBRARY]] (QB64 ONLY)


{{PageNavigation}}
