;テストプログラム Time='12:34:56' strcopy Time 1 2 Hour str2int h Hour strcopy Time 4 2 Minute str2int m Minute strcopy Time 7 2 Second str2int s Second Seconds=h*3600+m*60+s h=Seconds/3600 s=Seconds%3600 m=s/60 s=s%60 int2str Hour h int2str Minute m int2str Second s a=Hour strconcat a ':' strconcat a Minute strconcat a ':' strconcat a Second messagebox a '大きい数で割り算したとき' m=Seconds/60 s=Seconds%60 h=m/60 m=m%60 int2str Hour h int2str Minute m int2str Second s a=Hour strconcat a ':' strconcat a Minute strconcat a ':' strconcat a Second messagebox a '小さい数で割り算したとき' end |
;テストプログラム i=1 :Begin while i>0 int2str s i strconcat s '回目です' messagebox s 'まだ大丈夫' i=i+1 goto Begin endwhile |
;テストプログラム2 s='一二三四' strlen s int2str ans result message='「' strconcat message s strconcat message '」の長さは' messagebox ans message strcopy '一二三四' 3 2 s messagebox "strcopy '一二三四' 3 2 s を実行すると" 'strcopy' messagebox s '答えは' strscan '片山@誠一' '@' messagebox "strscan '片山@誠一' '@' を実行すると" 'strscan' int2str s result messagebox s '答えは' |
;テストプログラム3 strscan '片山 誠一' '@' messagebox "strscan '片山 誠一' '@' を実行すると" 'strscan' int2str s result messagebox s '答えは' |
;文字列sssの中にある1バイト文字(7文字までCharで指定)の位置(pos)を求める sss='片山 誠一 <kataken@geocities.com>' Char='@(>' call FindChar messagebox '片山 誠一 <kataken@geocities.com> の中で' '正しく見つける方法' int2str s pos messagebox s '@の位置は' int2str s pos2 messagebox s '(の位置は' int2str s pos3 messagebox s '>の位置は' end :FindChar Continue=1 j=0 pos=0 pos2=0 pos3=0 pos4=0 pos5=0 pos6=0 pos7=0 strlen sss len=result while Continue j=j+1 strcopy sss j 1 ss str2code k ss Kanji=0 if k>$7f then if k<$a0 Kanji=1 endif if k>$df Kanji=1 if Kanji=1 then j=j+1 else strscan Char ss if result>0 then if result=1 then if pos=0 pos=j endif if result=2 then if pos2=0 pos2=j endif if result=3 then if pos3=0 pos3=j endif if result=4 then if pos4=0 pos4=j endif if result=5 then if pos5=0 pos5=j endif if result=6 then if pos6=0 pos6=j endif if result=7 then if pos7=0 pos7=j endif endif endif if j>len Continue=0 endwhile return |
;includeテストメインプログラム j=0 include 'subprog.ttl' :main2 include 'subprog.ttl' end :sub1 return |
;subprog.ttl j=j+1 int2str s j messagebox s 'まだ大丈夫' include 'subprog.ttl' exit |
;subprog.ttl j=j+1 int2str s j messagebox s 'まだ大丈夫' if 2>1 then include 'subprog.ttl' endif exit |
;subprog.ttl j=j+1 int2str s j call sub2 goto endofsub :sub2 messagebox s '大丈夫' return :endofsub |
;subprog.ttl j=j+1 int2str s j call sub2 goto main2 :sub2 messagebox s '大丈夫' return |
;subprog.ttl j=j+1 int2str s j call sub2 :sub2 messagebox s '大丈夫' goto main2 return |
;subprog.ttl j=j+1 int2str s j call sub1 messagebox s '大丈夫' goto main2 |
;subprog.ttl j=j+1 int2str s j call sub1 messagebox s '大丈夫' call main2 exit :main2 return |