[此贴子已经被作者于2007-7-2 22:08:57编辑过]
[此贴子已经被作者于2007-7-2 22:08:57编辑过]
请问你们用来计算程序运行时间的方法是怎么样的??
在113楼(第8页中)有计算时间的代码,如果你想获得比较精确的运行时间值的话,你可以加进自己的代码中。
已经很全了
'******************************************************************************************************
Private Declare Function QueryPerformanceCounter Lib "kernel32" (lpPerformanceCount As Currency) As Long
Private Declare Function QueryPerformanceFrequency Lib "kernel32" (lpFrequency As Currency) As Long
'这两段API声明放在代码的最顶端
'*******************************************************************************************************
'*******************************************************************************************************
Dim mcurFreq As Currency, curCounter1 As Currency, curCounter2 As Currency '系统高精度计数器频率
QueryPerformanceFrequency mcurFreq
QueryPerformanceCounter curCounter1'取得开始时间
'这段代码放在开始计时的代码前
'********************************************************************************************************
'这里是函数处理代码(你的计算代码和输出代码放在这里)
'********************************************************************************************************
QueryPerformanceCounter curCounter2 '取得结束时间
'精确到毫秒
If mcurFreq <> 0 Then'支持高精度计数
curCounter2 = (curCounter2 - curCounter1) / mcurFreq
Else'不支持
curCounter2 = curCounter2 - curCounter1
End If
'**********************************************************************************************************
'在这里输出curCounter2就行了,其值就是你处理数据的函数所耗时间,建议用Format(curCounter2,"#0.000") & "秒"输出,这样直观一些
现在这个我加上了逗号且括大到能精确计算n=十万,但十万用时很长,计算速度跟之前的差不了多少
[attach]23447[/attach] vbc兄,加了逗号之后速度没什么变化,但是...精度就好像下降了....特别是逗号两旁的数字.
是不是在处理豆号的时候出错了?
vbc兄,加了逗号之后速度没什么变化,但是...精度就好像下降了....特别是逗号两旁的数字.
是不是在处理豆号的时候出错了?
很显然,我对他说的精确度问题没有引起他的注意。
计时加进代码里会不会出现当运算量大的时候CPU外理不过来而造成计时不准??
vbc兄,加了逗号之后速度没什么变化,但是...精度就好像下降了....特别是逗号两旁的数字.
是不是在处理豆号的时候出错了?
[/QUOTE]
怎么ID被封了,多谢你的提醒..之前没认真看>>