From QB64 Wiki
Jump to navigation Jump to search

The $STATIC metacommand allows the creation of static (unresizable) arrays.


{REM | ' } $STATIC


  • QBasic Metacommands require a REM or apostrophy (') before them and are normally placed at the start of the main module.
  • Static arrays cannot be resized. If a variable is used to size any array, it becomes $DYNAMIC.
  • A REDIM statement has no effect on $STATIC arrays except perhaps a duplicate definition error at the REDIM statement.
  • The array's type cannot be changed once DIM and a literal value sets the dimensions and element size.
  • $STATIC defined program arrays cannot be re-sized or use _PRESERVE.


Example: When a variable is used, the array can be resized despite $STATIC. The array becomes $DYNAMIC.

'$STATIC INPUT "Enter array size: ", size DIM array(size) 'using an actual number instead of the variable will create an error! REDIM array(2 * size) PRINT UBOUND(array)

Note: DIM using a literal numerical size will create a Duplicate definition error.

See also

Keyword Reference - Alphabetical
Keyword Reference - By Usage
Main Wiki Page