看板 C_and_CPP 關於我們 聯絡資訊
開發平台(Platform): (Ex: VC++, GCC, Linux, ...) Linux 額外使用到的函數庫(Library Used): (Ex: OpenGL, ...) 問題(Question): for(int i =0; i<50000; i++){ // 要關掉printf printf("%i in printf\n",i); // 要打開printf printf("%i hello world\n",i); } 這是一個簡化我想做的事的例子,請問要如何用指令關掉printf,之後再打開呢 謝謝 餵入的資料(Input): 預期的正確結果(Expected Output): 錯誤結果(Wrong Output): 程式碼(Code):(請善用置底文網頁, 記得排版) 補充說明(Supplement): -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 162.231.22.1
LPH66:可否詳述需求? 例如是否需要執行期決定輸出與否或之類的 01/24 12:03
LPH66:再者這種需求很多時候是除錯用, 這樣的話或許除錯巨集就夠了 01/24 12:04
LPH66:也不一定是除錯巨集, 可能可以是一個變數控制列印與否等等 01/24 12:07
LPH66:這樣的話更有可能只需要一個 if 便能滿足你的需要了 01/24 12:08
wuliou:動態:flag, 靜態:marco 01/24 12:33
ji2my:樓上正解 01/24 14:35
EdisonX:我的第一直覺是...用 fprintf 取代 XD 01/24 23:49
azureblaze:我的第一直覺是怎麼把stdout丟到黑洞裡再救回來XD 01/25 00:03
LPH66:其實我的第一直覺是 #define printf(...) 跟 #undef printf 01/25 15:01
LPH66:不過仔細想想這不就是除錯程式碼? 所以就這樣回了 01/25 15:02
jackylu63:> /dev/null 01/25 22:28