| 2011/08/23(Tue) 23:04:12 編集(投稿者)
>Includeの中で以下のようなイベントラベルを作成したのですが、Args(1)が空白文になってしまい、正常に作動しません。 >Args(1)には変数名、Args(2)には数値を入れて使います。 >どうすれば正常に作動するようになるか、ご助言をお願いします。 > > >変数増加処理: >if Args(1) >= Args(2) then >Incr Args(1) >endif >Return
今回は何となくどうなって欲しいのか予想できる気がしますが、 できればインクルードの記述だけではなくて、正常な動作がどのようなものなのかの説明を一緒に書いて欲しいです。
指定した任意の変数の値をサブルーチンの中で変更したいのであれば Eval関数が使えると思います。
Eval関数の使い方とその場合のサブルーチンの呼び出し方の単純な例を作ってみました。 少しでも参考になれば幸いです。
#第一引数で指定した名前の変数に第二引数を入れるだけのサブルーチン。 変数書き換え: Eval(Args(1)) = Args(2) return
#呼び出し例と値のチェック スタート: へんすう = 2 へんすう2 = 3
#間違った呼び出し方なので正常に動作しない。 Call 変数書き換え へんすう へんすう2 talk $(へんすう) #「2」が表示される end
#これも間違った呼び出し方。 Call 変数書き換え "へんすう" "へんすう2" talk $(へんすう) end #「へんすう2」が表示される
#正しい Call 変数書き換え "へんすう" へんすう2 talk $(へんすう) end #「3」が表示される
#サブルーチンがやっていることは↓と同じ。 へんすう = へんすう2 talk $(へんすう) end #「3」が表示される
exit
|