巧用 do{...} while(0)

你是否見過此類代碼 ??:

乍一看感覺有些多余,為什么要在宏定義中套一個 do{...}while(0)?
答案:使用 do{...} while(0)?構(gòu)造后的宏定義,可避免大括號、分號等的影響
舉個例子??:
不用 do{...}while(0) 結(jié)構(gòu)進(jìn)行宏定義將帶來如下影響:

添加了 do{...}while(0) 結(jié)構(gòu)進(jìn)行宏定義顯然就消除了上述影響,又學(xué)到一招 ??

綜上,在使用宏定義多條語句時,do{...}while(0) 結(jié)構(gòu)不妨一試 ??...