看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) mips gcc 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) NO 問題(Question): 在realtek SDK裡看到這個 #define open_logs() do {} while(0) 還有這個 #define log_error_doc(req) do {} while(0) 雖然我知道一般在macro用do while(0)是要避免if出錯,不過這邊do的{}沒塞東西orz 所以到底有什麼用處呢? --
kblover: 勉強說出愛我的原因08/04 22:34
Sodium: 卻說不出你欣賞我哪一種表情08/05 08:43
blueskyly: 卻說不出在什麼場合我曾讓你動心08/05 09:27
bt222: 更多更詳盡歌詞 在 ※ mojim.com 魔鏡歌詞網08/05 15:37
│ 文章代碼(AID): #1Lm3cQM2 (DSLR) [ptt.cc] Re: [閒聊] 對攝影漸漸感到反感 │ -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 175.180.98.192 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1462958758.A.371.html
bibo9901: legacy code? 05/11 17:39
懂了,感謝大大 ※ 編輯: filiaslayers (175.180.98.192), 05/11/2016 17:46:45
LPH66: 沒東西就代表真的沒東西, 也就是 no-op 05/11 19:50
LPH66: 一個可能是如一樓說的舊程式碼的取代, 另一個可能像這名字 05/11 19:50
LPH66: 應該是一些 log 的東西, 所以比較接近「刪去的除錯程式」 05/11 19:51
LPH66: 也就是有可能原先這裡是一個除錯用程式碼把東西倒進 log 裡 05/11 19:51
LPH66: 後來要放出去時要刪除這些除錯 log 所以取代成空敘述 05/11 19:52
LPH66: 不過這種狀況理論上把 macro 改訂成空白應該也是可行的 05/11 19:53
shadow0326: 我看過這樣寫來當假goto的...XD 05/11 20:48
shadow0326: do{...if(err) break;...}while(0) 05/11 20:49
boss0405: 如果訂成空白那如果有個if裡面只有print_log,那會變成 05/11 21:10
boss0405: 空的if,若是又沒有大括號會有問題 05/11 21:10
prismwu: 常用來做假GOTO 由其是要檢查一堆又不太可能會出錯的 05/11 21:13
prismwu: *尤其 05/11 21:14
cplusplus: 都拿來當假goto+1 05/11 23:25
CaptainH: 真有這需求幹嘛不直接用goto 05/11 23:34
Qbsuran: 1. 可以在區塊內宣告變數不影響外面 2. 05/11 23:48
Qbsuran: 可以用break取代goto 05/11 23:48