Page 31 of 62
SBasic User's Manual SBasic Version 2.7 Page 31
Printed: December 5, 1999
case 2 ' if selector = 2...
case 3 ' or 3...
foo = n + 2 ' change FOO
endcase ' end of second case
foo = 4 ' default action...
endselect
This example shows the use of multiple CASE statements within a CASE
clause. This feature comes in handy if your code must perform the
same function for a group of selector values.
This example also shows the method for performing a default action.
The line FOO = 4 executes if no CASE clause matches the selector
value. Note that the default clause does not require an initial CASE
statement or a terminating ENDCASE statement.
Also, this example shows that the selector value for this example is
an expression. You can use any valid algebraic expression as the
selector value in a SELECT statement.
Note, however, that CASE statements only accept a numeric value, a
constant, or a variable as an argument. You cannot use an algebraic
expression as the argument to a CASE statement! Doing so will
generate a compiler error.
Finally, this example shows that you can change the selector value
within a CASE clause, without affecting the actions of the SELECT
statement. This is because control passes to the ENDSELECT statement
immediately after executing the code in any CASE clause. Thus, any
following CASE clauses do not evaluate the changed selector value.
The EXIT statement allows you to leave a looping structure before the
terminating condition, if any, is reached. Control automatically
jumps to the end of the currently active looping structure.
You can also use EXIT to leave a SELECT-CASE structure. In this case,
control will jump to the corresponding ENDSELECT statement.
Example:
for n = 1 to 10
if n = 5
exit
endif
next
Here, control automatically leaves the FOR-NEXT loop when N equals 5.