Re: [問題] 請教程式的執行順序

看板C_and_CPP作者 (noOneKnows)時間12年前 (2013/05/24 13:16), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/3 (看更多)
※ 引述《stator (別急著吃棉花糖)》之銘言: : #include <stdio.h> : int f(int a){printf("*");return a+1;} : int main() : { : int a=1; : for (a=a+1;f(a)<5;a+=1) : { : printf("*"); : } : return 0; : } : 這樣印出來是*****五顆星 for 只是一種語法糖喔,C++ 標準 for(A;B;C) {D;} 相當於 { A; while(B) { D; -> 但注意這裡才是在 for-loop 中 continue 跳到的位置 C; } } B是執行的條件,不寫叫做無條件執行 但是有一點要注意的是,如果你有 continue 真的用 while 寫,是直接跳到執行條件去檢查 但是用 while 的概念來表示(或重寫) for 時, 要跳到 C 之前才是正確的(重寫則要想辦法跳到 C 之前) 另外老編譯器可能沒有最外層的括號~~所以有些人會自己在 for 迴圈外加括號 所以你就可以數自己究竟判斷了幾次,還有 D 執行了幾次,就知道有幾個 * 囉 ※ 編輯: applecool 來自: 123.110.214.94 (05/24 21:38)
文章代碼(AID): #1HdsWlnH (C_and_CPP)
文章代碼(AID): #1HdsWlnH (C_and_CPP)