162
Working with Macros
FXDeko User’s Guide
You also can break out of a loop with the
continue
command, which restarts a
loop at the top without executing commands after
continue
.
This macro uses such a loop to test for and skip odd numbers and, as a result,
types only the even numbers from 1 through 10:
$a=0
loop 10
$a = $a+=1
if $a&1
continue # skip odd numbers
end
type $a
end
Conditional loop commands
define both the loop and its conditional test.
The
while
command continues looping as long as its test expression is true.
FXDeko evaluates the test expression prior to each iteration of the loop, and as
long as the result is true, continues the loop:
$a=1
while $a<=5
type
"
hello
"
;newline
$a+=1
end
The
for
command,
for
makes an incremental loop, such as the one above,
more concise:
for $a=1 $a<=5 $a+=1
type
"
hello
"
;newline
end
The initial expression
$a=1
is executed once. The test expression
$a<=5
is
evaluated prior to each iteration of the loop; if the test result is true, the loop
continues. The increment expression
$a+=1
is executed after each loop iteration.
S
UBROUTINES
To a user, there is no practical difference between FXDeko’s built-in commands
and the macros that you write and store under file names. You can have one
macro run another macro, simply by using the macro file name in the same way
you would use a command.
When one macro “calls” another, the second macro is considered a
subroutine
of the first. You can call an existing macro as a subroutine or create one within
your macro.
The
command
command defines a local subroutine, which ends with the
end
command.
Содержание FXDEKO
Страница 8: ......
Страница 130: ......
Страница 165: ...Macro Programming Language 165 FXDeko User s Guide b integer a 5 b equals 13...
Страница 175: ......
Страница 210: ......