trace()巨集一般是用在mfc中的,用於將除錯資訊輸出到vs的輸出視窗中(這是關鍵), 這在使用vs作為開發工具的時候,是非常方便的。
然而在開發一般c++程式時,卻貌似無法獲得這樣的便利,其實只要經過幾個步驟同樣可以實現:
一:#include
//此標頭檔案包含atltrace巨集,而其實mfc做的就是#define trace atltrace
二:使用atltrace("error");
三:包含atl鏈結庫:atlsd.lib
(debug
)或者atls.lib
trace詳細教程:
trace巨集對於vc下程式除錯來說是很有用的東西,有著類似printf的功能;該巨集僅僅在程式的debug版本中出現,當release的時候該巨集就完全訊息了,從而幫助你調式也在release的時候減少**量。
使用非常簡單,格式如下:
trace("ddddddddddd");
trace("wewe%d",333);
同樣還存在trace0,trace1,trace2。。。分別對應0,1,2。。個引數
trace資訊輸出到vc ide環境的輸出視窗(該視窗是你編譯專案出錯提示的哪個視窗),但僅限於你在vc中執行你的debug版本的程式。
trace資訊還可以使用debugview來捕獲到。這種情況下,你不能在vc的ide環境中執行你的程式,而將build好的debug版本的程式單獨執行,這個時候可以在debugview的視窗看到debugvie格式的輸出了。
vc中trace的用法有以下四種:
1:trace
,就是不帶動態引數輸出字串,
類似c的printf("輸出字串");
2:trace
中的字串可以帶乙個引數輸出
, 類似c的printf("...%d",變數);
3:trace
可以帶兩個引數輸出,類似c的printf("...%d...%f",變數1,變數2);
4:trace 可以帶三個引數輸出,類似c的printf("...%d,%d,%d",變數1,變數2,變數3);
trace 巨集有點象我們以前在c語言中用的printf函式,使程式在執行過程中輸出一些除錯資訊,使我們能了解程式的一些狀態。但有一點不同的是:
trace 巨集只有在除錯狀態下才有所輸出,而以前用的printf 函式在任何情況下都有輸出。和printf 函式一樣,trace函式可以接受多個引數如:
int x = 1;
int y = 16;
float z = 32.0;
trace( "this is a trace statement/n" );
trace( "the value of x is %d/n", x );
trace( "x = %d and y = %d/n", x, y );
trace( "x = %d and y = %x and z = %f/n", x, y, z );
要注意的是trace巨集只對debug 版本的工程產生作用,在release 版本的工程中,trace巨集將被忽略。
TRACE()的用法總結
trace 巨集一般是用在mfc中的,用於將除錯資訊輸出到vs的輸出視窗中 這是關鍵 這在使用vs作為開發工具的時候,是非常方便的。然而在開發一般c 程式時,卻貌似無法獲得這樣的便利,其實只要經過幾個步驟同樣可以實現 一 include 此標頭檔案包含atltrace巨集,而其實mfc做的就是 de...
VC中TRACE巨集的用法
trace巨集對於vc下程式除錯來說是很有用的東西,有著類似printf的功能 該巨集僅僅在程式的debug版本中出現,當release的時候該巨集就完全消失了,從而幫助你除錯也在release的時候減少 量。使用非常簡單,格式如下 trace ddddddddddd trace wewe d 33...
t code ST05 trace的用法和分析
st05有很多trace的功能,主要使用的有兩個 1 通過sql trace去追蹤你所執行的程式跑了那些資料庫表 例如我想知道某個主資料上的text是怎麼來的,或者是某個t code下面的某個值是存在那個表的 首先通過啟用trace 然後去run你的t code 這裡越簡潔越好,例如我是要檢視xd0...