[問題] do{...}while(..)

看板C_and_CPP作者 (哇哈哈~)時間14年前 (2011/05/04 17:52), 編輯推噓2(205)
留言7則, 5人參與, 最新討論串1/2 (看更多)
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) 突然想一個問題,我覺得很疑惑的 曾經不知在哪邊看過一段do..while的用法 如下 do{ .... ..... }while(0) 這個不就是只做一次嗎?? 為啥還要用do while包起來? 還是其中有什麼特別的含意嗎?? @@? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.84.235.38

05/05 01:54, , 1F
有的Macro會用這個包起來
05/05 01:54, 1F

05/05 01:58, , 2F
#define func(a) { a=1;}
05/05 01:58, 2F

05/05 01:59, , 3F
if( a>1) func(a); else printf("XXX"); 會出錯
05/05 01:59, 3F

05/05 01:59, , 4F

05/05 02:12, , 5F
j大那個好像直接 {} 括起來就好啦 XD
05/05 02:12, 5F

05/05 02:21, , 6F
是啊,不過我記得比較早期的C不支援單獨的 { }
05/05 02:21, 6F

05/05 08:03, , 7F
do while false 還可以在中間break;比goto安全
05/05 08:03, 7F
文章代碼(AID): #1DmP95O3 (C_and_CPP)
討論串 (同標題文章)
以下文章回應了本文
問題
10
20
完整討論串 (本文為第 1 之 2 篇):
問題
10
20
問題
2
7
文章代碼(AID): #1DmP95O3 (C_and_CPP)