Difference between revisions of "OPTION BASE"

From QB64 Wiki
Jump to navigation Jump to search
imported>Stylin
(updated to new blueprint, added descriptions and examples)
imported>Clippy
m
Line 3: Line 3:
  
 
{{PageSyntax}}
 
{{PageSyntax}}
:<code>{{KW|OPTION BASE}} 0|1</code>
+
:<code>{{KW|OPTION BASE}} {0|1}</code>
  
  
 
{{PageDescription}}
 
{{PageDescription}}
 
* This statement affects array declarations where the lower bound of a dimension is not specified. See {{KW|DIM}}, {{KW|REDIM}}, {{KW|STATIC}}, {{KW|COMMON}}.
 
* This statement affects array declarations where the lower bound of a dimension is not specified. See {{KW|DIM}}, {{KW|REDIM}}, {{KW|STATIC}}, {{KW|COMMON}}.
* By default, the lower bound for arrays is zero, and may be changed to one.
+
* When used {{KW|OPTION BASE}} must be used before any array declarations ({{KW|DIM}}).
* {{KW|OPTION BASE}} must be used before any array declarations, if at all.
+
* 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.
 
* Otherwise, arrays will be dimensioned from element 0 if you DIM just the upper bounds.
* Statement should be set before any arrays are dimensioned ([[DIM]]).
+
* You can also set other array boundaries by using {{KW|TO}} in the DIM such as: DIM array(5 TO 10)
  
  
Line 26: Line 26:
  
  
{{CodeStart}}' Set the default lower bound for array declarations to zero. This statement has no real effect,
+
{{CodeStart}}' Set the default lower bound for array declarations to zero. This statement has no
' but it may be useful to emphasize the default behavior in order to eliminate any chance of confusion.
+
' real effect, but it may be useful to emphasize the default behavior in order to eliminate  
 +
'any chance of confusion.
 
{{Cl|OPTION BASE}} 0
 
{{Cl|OPTION BASE}} 0
  

Revision as of 17:44, 1 March 2010

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. See DIM, REDIM, STATIC, COMMON.
  • When used OPTION BASE must be used before any array declarations (DIM).
  • 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 such as: DIM array(5 TO 10)


Examples

' 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


' Set the default lower bound for array declarations to zero. This statement has no ' real effect, but it may be useful to emphasize the default behavior in order to eliminate 'any chance of confusion. 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


Alternative: DIM arrays using upper and lower bounds as shown:

DIM Array(1 TO 200)


See also



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