對於喜歡用printf debug的同行來說,最麻煩的莫過於要重複輸入很多printf語句,而且模組除錯完成後要手動的把它們拿掉。
現在介紹乙個很好的辦法(vs2010中):
#ifdef _debug
#define d_str(_str_) printf("f:%s(l:%d)%s\n",__file__,__line__,_str_);
#define d_line printf("f:%s(l:%d)-fn:%s\n",__file__,__line__,__function__);
#define d_char(_char_) printf("f:%s(l:%d)%d\n",__file__,__line__,_char_);
#define d_hex(_hex_) printf("f:%s(l:%d)[%x]\n",__file__,__line__,_hex_);
#else
#define d_str(_str_) ;
#define d_line ;
#define d_char(_char_) ;
#define d_hex(_hex_) ;
#endif
對於你的debug資訊是否顯示只用通過debug是否定義來控制。 很好的debug方式取代printf滿天飛
對於喜歡用printf debug的同行來說,最麻煩的莫過於要重複輸入很多printf語句,而且模組除錯完成後要手動的把它們拿掉。現在介紹乙個很好的辦法 ifdef debug define d str str printf f s l d s n file line str define d li...
printf解析方式
先看一段 void main void int ptr arr ptr 123 printf d,d ptr,ptr 程式執行最終輸出的結果是8,8 其實剛開始我也很納悶,ptr不是arr 1 7嗎?怎麼回事呢 我認為乙個很關鍵的問題是 可能有很多人把 ptr 123 展開的時候變成了 ptr pt...
SAP ABAP 的常用debug方式
sap abap 的常用debug方式 1.直接在程式中設斷點 在se38裡面打上breakpoint,程式執行到該處即進入debug模式 2.background job的debug 進入sm37 查詢到自己想要debug的後台程式,這裡執行完畢或者正在執行的均可進入debug 查詢到後打中job...