您的位置:首页 > 其它

运行时间的观察--watch窗口的技巧续

2012-09-10 15:33 225 查看
微软精心打造的VC调试器确实非常方便,再来看个watch窗口的小技巧:用作计时器

有时候可能想要知道个函数或者一段代码运行需要的粗略时间。一般是假如一些计时的处理,比如函数开始时调用GetTickCount()记录开始时间,完了在调用一边获得结束时间,一减就出来~~ 不复杂,但是确实需要动代码。实际上调试器中的watch窗口就能帮你简单的完成这个功能。



很简单的代码,main函数中调用Sleep(1000)延时1000毫秒,再调用自定义的MyDelay(100)延时100毫秒,总共延时1100毫秒。在vc6中输入代码后,在Sleep(1000)和return 0;这两行各设置一个断点,然后按F5进入调试状态。调试器会停在Sleep(1000)这行。这时候在Watch窗口中输入@clk/1000,这时候看到Value是816(每次都会不一样,不精确嘛!)。这是说明从程序启动到被断点截下,总共花了816毫秒。@clk是个伪寄存器,计时用,单位是微妙。
接下来,再输入一个@clk=0,会看到@clk/1000的值也清零了。如下图:



按F5继续运行,在return 0;这行断下来,也就是说延时1100ms后,我们看到@clk/1000的值变化了。



@clk/1000的Value是1108ms,粗略的计时还是没问题的。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: