QMBasic Limits

QMBasic Limits

Top  Previous  Next


Number of local variables or elements in a matrix

Dependent on available virtual memory.


Maximum file size

Dynamic files may have up to 2147483647 groups (16384Gb with 8kb group size) unless a lower limit is imposed by the underlying operating system.


Maximum string size

There is effectively no limit imposed by QMBasic. The actual limit will be determined by the total dynamic memory size which must be mapped to the swap file.


Number of open files

The underlying operating system may impose a limit on the number of files which may be open simultaneously. QMBasic provides an automated file sharing scheme whereby files may be closed at the operating system level if the limit is reached. QMBasic will save details of the file which has been closed and will reopen it automatically when required.


This scheme provides access to a virtually unlimited number of files but can have severe performance effects when many files are used in frequent rotation.


Maximum precision

14 decimal places


Maximum variable name or statement label length

No limit


Maximum characters in a string constant

No limit.


Maximum arguments to a subroutine



Maximum labels in an ON GOSUB or ON GOTO



Maximum characters in a catalogue call name

128 (32 for trigger functions) or the value of the MAXIDLEN configuration parameter, whichever is the lower.


Maximum characters in a record id

Default 63 but can be increased up to 255 using the MAXIDLEN configuration parameter.