- 1 名前:名無しさん@お腹いっぱい。 [2008/03/16(日) 07:30:24 ID:Jd8Is6hB0]
- オーディオプレイヤー、foobar2000について語るスレ
■ 公式 www.foobar2000.org/ ■ 解説系サイト foobar2000 Wiki for Japanese Users foobar2000.xrea.jp/ Hydrogenaudio Forums -> foobar2000 www.hydrogenaudio.org/forums/index.php?act=SF&s=&f=28 ■ 前 foobar2000 Part51 pc11.2ch.net/test/read.cgi/software/1201255377/ ■ 過去スレ一覧 tnetsixenon.xrea.jp/foobar2000/index.php?%E3%83%AA%E3%83%B3%E3%82%AF%E9%9B%86#e4cbd43e
- 598 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/27(木) 17:18:07 ID:1HBMrpu/0]
- >>595
シングルクォーテーションが抜けてるよ $while('test','proc',loop) 中身がTFとして評価"されない"ようにシングルクォートで囲まないと ループする前に評価されてしまうよ。 正常: $register(i,0) $while('$ifgreater(%i%,10,0,1)','$register(i,$add(%i%,1))%i%',30) 異常A: $register(i,0) $while($ifgreater(%i%,10,0,1),$register(i,$add(%i%,1))%i%,30) 異常B: $while(0,1,30) 異常AとBは$whileから見れば々ものです。$whileが評価される前に 中身の$if、$registerが評価されるためです
- 599 名前:598 mailto:sage [2008/03/27(木) 17:24:45 ID:1HBMrpu/0]
- >>595
>>598の補足 異常AとBは$whileから見れば同じものです。$whileが評価される前に 中身の$if、$registerが評価されるため、 $if〜の結果が0になり$whileに渡されます、第二引数の$reg〜も同様です そして$whileは「0」をTFとして評価した結果、0なのでループ、第二引数の「1」をTFとして評価した結果1を返す そしてループ制限の30になったのでループを抜ける そんな感じです。 $puts(fsize,18) $while( $ifgreater($calc_string(メイリオ,$get(fsize),b, %title% ,width),%_width%,1,0), $puts(fsize,$sub($get(fsize),1)) hoge, 5 ) これを実行してみればたぶんhogeが5個表示されるはず
- 600 名前:名無しさん@お腹いっぱい。 mailto:sage [2008/03/27(木) 17:45:01 ID:1HBMrpu/0]
- >>595
感がいい人なら気づいていると思うが、$whileの中では$puts/$getは使えない。 たぶん$whileの中でTFを評価するのでローカル変数の$puts/getが毎回初期化されるんだろう 激しく長文スマソ
|

|