Dec 22 Wed 2010 03:01 [A] AutoIt!! 條件式回圈 分享: 1. ContinueLoop 和 C 語言的 Continue 相似,必須與 If-Else-Then 合用,當條件成立時,此次回圈不執行,直接執行下個回圈。以 1+3+5...+11 為例 Dim $i=0, $sum=0 For $i=1 To 11 If(Mod($i,2)=0) Then ; 除以2之餘數為0 時 (即偶數時) 跳過不做 ContinueLoop EndIf $sum+=$i Next MsgBox(0, "title", $sum) 2. ContinueCase 必須用於 Case 類語法。由於 Case 與 Case 只會執行一次,如果在 Case 底下再加上 ContinueCase 的話就會再繼續執行下個 Case。如 $num = 0 $pre_msg = "Edis" Switch $num Case 0: $pre_msg &= "on" ContinueCase Case 1: $pre_msg &= "X" Case 2: $pre_msg = "2" Case Else: $pre_msg = "Others" EndSwitch 由於 $num 初值給 0 ,一般而已如果沒有加上 ContinueCase 的話只會執行 Case 0,最後 $pre_msg 將變成 "Edison";但加上 ContinueCase 後,還會再多執行到 Case 1,於是最後 $pre_msg 變成 "EdisonX" 3. ExitLoop ExitLoop 和 C 語言的 break 相似,使用時便是停止目前所在回圈。而 ExitLoop 還可以設要跳出回圈的層數,如 Dim $i=0, $j=0, $times=0 For $i=0 To 10 For $j=0 To 10 $times+=1 ExitLoop(1) Next Next MsgBox(0, "title", $times) 上述之程式碼,ExitLoop(1) 指的是只往外跳出一層回圈,所以 $times 仍會被加 11 次,最後結果 $times = 11;若改為 ExitLoop(2),則會往外跳出二層回圈,最後 $times=1。使用 ExitLoop 時,若不指明引數直接調用,預設值是 1。 edisonx 發表在 痞客邦 PIXNET 迴響(0) 引用(0) 人氣(102) http://edisonx.pixnet.net/blog/post/38604407 回 · 發現好東西 autoit 這一篇文章封面 |
本站公告:〔您越需要我們,我們就越有創意〕 | 本站說明書:〔發現故鄉還有改進的地方,請來信告訴原丁們〕 |
觀察應用學習點數 :〔咱的故鄉有您的參與,會使我們有更大的發揮空間,展現更豐富精彩的學習畫面〕 | 〔期待藉由無障礙網頁設計,能讓視障小朋友更愛看書、更愛寫作且更愛學習〕:盲用電腦「心得分享」 |