Difference between revisions of "OPTION BASE"

From QB64 Wiki
Jump to navigation Jump to search
imported>SMcNeill
(Remove redundant info about the impossibility of using a keyword as a numeric variable as that's not exclusive to OPTION BASE. Also, it's stated elsewhere where relevant.)
imported>Clippy
m (Undo revision 23827 by SMcNeill (Talk))
Line 12: Line 12:
 
* Otherwise, arrays will be dimensioned from element 0 if you DIM just the upper bounds.
 
* Otherwise, arrays will be dimensioned from element 0 if you DIM just the upper bounds.
 
* You can also set other array boundaries by using [[TO]] in the DIM declaration such as {{InlineCode}}DIM array(5 TO 10){{InlineCodeEnd}}
 
* You can also set other array boundaries by using [[TO]] in the DIM declaration such as {{InlineCode}}DIM array(5 TO 10){{InlineCodeEnd}}
 +
* Note: '''OPTION''' and '''BASE''' cannot be used as numerical variable names.
  
  

Revision as of 02:40, 19 October 2017

The OPTION BASE statement is used to set the default lower bound of arrays.


Syntax

OPTION BASE {0|1}


Description

  • This statement affects array declarations where the lower bound of a dimension is not specified.
  • When used, OPTION BASE must come before any array declarations (DIM) to be affected.
  • By default, the lower bound for arrays is zero, and may be changed to one using the statement.
  • Otherwise, arrays will be dimensioned from element 0 if you DIM just the upper bounds.
  • You can also set other array boundaries by using TO in the DIM declaration such as DIM array(5 TO 10)
  • Note: OPTION and BASE cannot be used as numerical variable names.


Examples

Example 1: Set the default lower bound for array declarations to one.

OPTION BASE 1 ' Declare a 5-element one-dimensional array with element indexes of one through five. DIM array(5) AS INTEGER PRINT LBOUND(array)

1


Example 2: Set the default lower bound for array declarations to zero.

OPTION BASE 0 ' Declare an 18-element two-dimensional array with element indexes of zero through two ' for the first dimension, and 10 through 15 for the second dimension. DIM array(2, 10 to 15) AS INTEGER PRINT LBOUND(array, 1) PRINT LBOUND(array, 2)

0 10


See also



Navigation:
Go to Keyword Reference - Alphabetical
Go to Keyword Reference - By usage
Go to Main WIKI Page