Re: [問題] 非console介面的程式debug技巧
我都寫自己的 print 控制項
創建一個控制項到視窗
用指標去指到他 wxTextCtrl * m_TextDebug ;
寫個可變引數的 print function
void MyFrame::ptf( char* strArg, ... )
{
const int BUFSIZE = 128;
va_list marker ;
char strMsg[BUFSIZE];
va_start( marker, strArg ) ;
vsprintf(strMsg, strArg, marker);
va_end( marker ) ;
AppendDebugMessages(_(strMsg));
}
實作 TextCtrl 新增訊息的 function
void MyFrame::AppendDebugMessages(wxString s)
{
m_TextDebug->AppendText(s);
}
※ 引述《holymars ()》之銘言:
: ※ 引述《yu00928 (黑皮)》之銘言:
: : 平常我們在寫console介面的程式
: : 如果遇到bug或是error最常用的debug法應該就是printf一些特定的值
: : 來看看跟自己想的一不一樣
: : 但是如果今天我是在用BCB或是VC寫視窗程式
: : 執行的時候沒有小黑窗跳出來
: : printf也不能用
: : 不知道大家這種情況都是如何debug的
: : 想詢問一些小技巧
: : 感謝
: WIN32有個API..
: AllocConsole()
: http://msdn.microsoft.com/en-us/library/ms681944(VS.85).aspx
: 在非Console的程式中呼叫就能叫出console
: 然後conio.h裡有個函式叫_cprintf
: http://msdn.microsoft.com/en-us/library/7ax4dbdt(VS.71).aspx
: 它用法和printf一模一樣
: 以上給習慣用printf大法debug的人
: 不過說真的,老是用printf大法不是長久之計啊
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.118.20.167
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 3 篇):