trace是一個(gè)計(jì)算機(jī)術(shù)語。TRACE和TRACK是用來調(diào)試web服務(wù)器連接的HTTP方式。TRACE宏對于VC下程序調(diào)試來說是很有用的東西,有著類似printf的功能。在MATLAB中,trace用于求二維方陣的跡,即該方陣對角線上元素之和。在Flex中,用作調(diào)試信息顯示函數(shù),用于在debug(調(diào)試)模式下輸出。

外文名

trace

用法

類似C的printf(\"輸出字符串\")

用于

在debug(調(diào)試)模式下輸出

格式

TRACE(\"DDDDDDDDDDD\")

Web

支持該方式的服務(wù)器存在跨站腳本漏洞,通常在描述各種瀏覽器缺陷的時(shí)候,把"Cross-Site-Tracing"簡稱為XST。

攻擊者可以利用此漏洞欺騙合法用戶并得到他們的私人信息。

解決方案:禁用這些方式。

VC

該宏僅僅在程序的DEBUG版本中出現(xiàn),當(dāng)RELEASE的時(shí)候該宏就完全消失了,從而幫助你調(diào)試也在RELEASE的時(shí)候減少代碼量。

使用非常簡單,格式如下:TRACE("DDDDDDDDDDD"); TRACE("wewe%d",333); 同樣還存在TRACE0,TRACE1,TRACE2。分別對應(yīng)0,1,2個(gè)參數(shù) TRACE信息輸出到VC IDE環(huán)境的輸出窗口(該窗口是你編譯項(xiàng)目出錯(cuò)提示的那個(gè)窗口),但僅限于你在VC中運(yùn)行你的DEBUG版本的程序。

TRACE信息還可以使用DEBUGVIEW來捕獲到。這種情況下,你不能在VC的IDE環(huán)境中運(yùn)行你的程序,而將BUILD好的DEBUG版本的程序單獨(dú)運(yùn)行,這個(gè)時(shí)候可以在DEBUGVIEW的窗口看到DEBUGVIEw格式的輸出了。

VC中TRACE的用法有以下四種:

1:TRACE,就是不帶動(dòng)態(tài)參數(shù)輸出字符串,類似C的printf("輸出字符串");

2:TRACE中的字符串可以帶一個(gè)參數(shù)輸出,類似C的printf("...%d",變量);

3:TRACE可以帶兩個(gè)參數(shù)輸出,類似C的printf("...%d...%f",變量1,變量2);

4:TRACE可以帶三個(gè)參數(shù)輸出,類似C的printf("...%d,%d,%d",變量1,變量2,變量3);

TRACE宏有點(diǎn)像我們以前在C語言中用的Printf函數(shù),使程序在運(yùn)行過程中輸出一些調(diào)試信息,使我們能了解程序的一些狀態(tài)。但有一點(diǎn)不同的是: TRACE 宏只有在調(diào)試狀態(tài)下才有所輸出,而以前用的Printf 函數(shù)在任何情況下都有輸出。

和Printf函數(shù)一樣,TRACE函數(shù)可以接受多個(gè)參數(shù)如:int x=1;int y=16;float z=32.0;TRACE("This is a TRACE statement ");TRACE("The value of x is %d ",x);TRACE("x=%d and y=%d ", x, y);TRACE("x=%d and y=%x and z=%f ", x, y, z);要注意的是TRACE宏只對Debug版本的工程產(chǎn)生作用,在Release版本的工程中,TRACE宏將被忽略。

函數(shù)簡介

函數(shù)功能:在FreeMat、Matlab中,該函數(shù)用于求二維方陣的跡,即該方陣對角線上元素之和。

語法格式:

y=trace(x)

這里x是一個(gè)方陣。

trace函數(shù)的算法實(shí)現(xiàn):t=sum(diag(A));

相關(guān)函數(shù):det、diag

程序示例

--> A= 1 2 3; 4 5 6; 7 8 9];

--> trace(A)

ans=15

--> B=[1 0 0; 0 1 0; 0 0 1];

-->trace(B)

ans=3

--> sum(diag(A))

ans=15

-->sum(diag(B))

ans=3

顯示函數(shù)

trace(...):void

用于在debug(調(diào)試)模式下輸出,類似與java中的System.out.println();

1、以調(diào)試模式運(yùn)行程序;

2、點(diǎn)擊控制臺(tái);

3、運(yùn)行有trace()函數(shù)的程序塊,控制臺(tái)就會(huì)有輸出調(diào)試信息;

api介紹:

調(diào)試時(shí)顯示表達(dá)式或?qū)懭肴罩疚募蝹€(gè)跟蹤語句可支持多個(gè)參數(shù)。如果跟蹤語句中的任何參數(shù)包含String之外的數(shù)據(jù)類型,則跟蹤函數(shù)將調(diào)用與該數(shù)據(jù)類型關(guān)聯(lián)的toString()方法。例如,如果該參數(shù)是一個(gè)布爾值,則跟蹤函數(shù)將調(diào)用Boolean.toString()并顯示返回值。

參數(shù):

arguments要計(jì)算的一個(gè)或多個(gè)(逗號(hào)分隔)表達(dá)式。對于多個(gè)表達(dá)式,輸出中每個(gè)表達(dá)式之間都將插入一個(gè)空格。

語言版本:

3.0

Player版本:

Flash 9,AIR 1.0,Lite4