[問題] 三種迴圈互換問題

看板C_and_CPP (C/C++)作者 (~睿~)時間13年前 (2013/01/12 22:38), 編輯推噓3(303)
留言6則, 5人參與, 最新討論串1/1
我一直有一個疑問 就是用for loop寫的程式 是不是一定能用while loop寫出來 還有do while也是... 是不是用其中一個迴圈寫出來的程式 就一定能用其他兩種迴圈寫出來? #include<iostream> using namespace std; int main() { string s; while(cin>>s) cout<<"hello, "<<s<<endl; return 0; } 就像這個簡單的程式 是不是能用for或者do while 來寫? 如果是...要改成怎樣? 一般來說 for 是用在知道次數的時候 do while 是用在不管如何都要做一次的時候 while 是不清楚次數的時候 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.144.134

01/12 22:55, , 1F
for可以用for(;;){},也可以不知道次數。
01/12 22:55, 1F

01/12 23:23, , 2F
我覺得這篇部份可能是你想要的 #1Eudwp9b (C_and_CPP)
01/12 23:23, 2F

01/13 00:42, , 3F
一定可以互換,不過還是建議挑適合的,可讀性問題
01/13 00:42, 3F

01/13 01:04, , 4F
for(a; b; c){ d; } <--> a; while(b){ d; c; }
01/13 01:04, 4F

01/13 01:05, , 5F
上面只差在a的scope
01/13 01:05, 5F

01/13 02:05, , 6F
真是上了一大課
01/13 02:05, 6F
文章代碼(AID): #1GyNLzky (C_and_CPP)
文章代碼(AID): #1GyNLzky (C_and_CPP)