這兩天在看別人代碼時,發現別人在宏定義中使用了do...while語句,百思不得其解,于是在網上查找了一番,現總結了一下,轉帖出來共享!#define MACRO_NAME(para) do{macro content}while(0)的格式,總結了以下幾個原因:1,空的宏定義避免warning:#define foo() do{}while(0)2,存在一個獨立的block,可以用來進行變量定義,進行比較復雜的實現。3,如果出現在判斷語句過后的宏,這樣可以保證作為一個整體來是實現:#define foo(x) \action1(); \action2();在以下情況下:if(NULL == 
作者: Rollen Holt 發表于 2010-12-16 00:10 原文鏈接
評論: 0 查看評論 發表評論
最新新聞:
· 在線比價搜索引擎Shop.com出售 蓋茨曾投資(2010-12-16 08:54)
· 鄧元鋆離職背后:諾基亞中國腹背受敵(2010-12-16 08:53)
· 央行:超級網銀收費將降低(2010-12-16 08:52)
· Android和iPhone平臺2010年度最佳軟件和游戲榜單出爐(2010-12-16 08:50)
· 京東遭遇出版社集體逼宮 今日恢復原價改返券(2010-12-16 08:48)
網站導航:博客園首頁 我的園子 新聞 閃存 小組 博問 知識庫
文章來源:
http://www.cnblogs.com/rollenholt/articles/1907414.html
posted on 2010-12-16 00:10
Rollen Holt 閱讀(67)
評論(0) 編輯 收藏 引用