プチコン3号 SmileBASIC コミュニティ投稿Oskar oskar_liebig2015/01/15 21:36:22今プログラムが動いているスロットを調べる関数を作ってみました。BACKTRACEを使わないので、コンソール画面に影響が出ません。 公開キー E3XK33JS8そうだね 5返信プレイ済み2017/11/04 00:14:40に取得
プチコン3号 SmileBASIC コミュニティ返信[1]親投稿Oskar oskar_liebig2015/1/15 21:45これを組み込んだプログラムが複数のスロットにロードされていても正常に動作します。SMILEボタンのプログラムではCURRENT_SLOT() 関数は 4 を返します。 グローバルラベルとグローバル変数を使っていますが、思いっきり長くしておいたので、ほかで使っていることはまあないでしょう。0そうだね プレイ済み2017/11/04 00:14:40に取得
プチコン3号 SmileBASIC コミュニティ返信[3]親投稿otta777 otta777a2015/1/16 16:48USEで他のプログラムスロットを実行可能な状態にしなければ プログラムが動いてるスロットから別のスロットの同名のラベルを 参照できないから自分のプログラムが格納されているスロット 番号が取得できるんですね。 BACKTRACEを使う方法もそうでしたがこの発想にも驚きました。0そうだね プレイ済み2017/11/04 00:14:40に取得
プチコン3号 SmileBASIC コミュニティ返信[4]親投稿Oskar oskar_liebig2015/1/16 19:06USEで他スロットを実行可能にしても大丈夫です。 プチコン3号のグローバル変数は、C言語でいうstatic変数(やC++の無名namespace)のように、同じ名前でもスロットごとに別物扱いになるからです。0そうだね プレイ済み2017/11/04 00:14:40に取得
プチコン3号 SmileBASIC コミュニティ返信[5]親投稿otta777 otta777a2015/1/16 19:36>Oskarさん なるほど!スロットごとに変数が別物として扱われるおかげ なんですね。参考になります。 0そうだね プレイ済み2017/11/04 00:14:40に取得