如何在 Visual C++ 2010 调试过程中跟踪/输出时间戳

6

大家好,VC2010提供了调试工具“跟踪(trace)”,它不仅可以将变量值输出到输出窗口,还可以输出一些内置参数,如TID TNAME、PID等。

我想让trace也输出时间戳,这在VS2010中是否可行?

谢谢!

2个回答

2

您可以使用预定义变量$TICK,有关详细信息请访问MSDN


1

您可以使用花括号来输出表达式的结果。

如果您有

int x;
x=10;
...

如果您在 x=10 之后设置了一个跟踪点,并使用表达式 x={x},它将输出 x=10 到您的输出窗口。
只需在花括号内放置一个给您时间戳的表达式,例如 timestamp={time(0)}(当然这取决于您用于获取时间的 API...)。

在VS2008中,使用GetTickCount()无法正常工作。您确定它在VS2010中可行吗? - Steed
我担心我会使用另一个时间戳库(用于跨平台需求)。因此,我不确定它是否特别适用于GetTickCount(),但应该可以。如果不行,有一个简单的解决方法:将GetTickCount()返回值分配给一个变量并显示该变量:“DWORD x = GetTickCount();”,然后在下一行中设置一个跟踪点,其中“timestamp = {x}”。我确信这在VS2008和VS2010中有效。您有一个额外的、不必要的赋值,但我认为这仅用于调试目的,而不是生产代码。 - Dinaiz

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接