在VC中如何得到一段程序的运行时间! 具体要用那个函数?多谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 运行前后分别GetTickCount()一下,减一下就行了 clock_t start, end;start = clock();your code...end = clock();time = end - start;结果为ms 程序的第一个语句写的GetTickCount(),最后一句写的也是这个,可是运行下来总是0。不知道为什么? 我用syl08341的方法也总是0,使用GetTickCount()函数的时候还会出现15或16ms,不知道具体因为什么,请各位告之。 需要高精度计时用long t=GetTickClock(); 需要更高精度计时可参考下列程序: #include <windows.h>#include <iostream>#include <iomanip> using namespace std; int main() { LARGE_INTEGER t1,t2,feq; int b=0; QueryPerformanceFrequency(&feq);//每秒跳动次数 QueryPerformanceCounter(&t1);//测前跳动次数 for(int i=0;i<100;i++) b++; QueryPerformanceCounter(&t2);//测后跳动次数 double d=((double)t2.QuadPart-(double)t1.QuadPart)/((double)feq.QuadPart);//时间差秒 std::cout<<setprecision(20)<<showpoint<<std::endl;//小数点表示20位 std::cout<<d<<std::endl; return 0; } 也可以用GetSystemTime来实现啊~ 为了测试时间,最好让你的程序连续运行N遍,可以测的准确些。DWORD a,b;a=GetTickCount();for(int i=0;i<10000;i++){ YourFun();}b=GetTickCount();(b-a)/10000就时程序运行的时间单位ms zyoujie你好,为什么要在除以10000呢,是因为循环的次数吗?我现在就是想计算整个循环要用多长时间?两个GetTickCount()函数的差单位是毫秒吗? 请教MFC 视图边框的实现 mfcJ界面做了修改 关于驱动程序的问题,请各位仁兄义姐帮忙解答,谢谢! 那里有C++或VC++的语言入门教程??? 请问把长整型转换成字符串的函数是什么? 关于dll,在线等待 VC++在2000中的调色如果想得到和系统一样的灰色它们的值各是多少! 关于MsoCommandBar的应用 ring3下无hook进程守护 为什么别的FTP函数都可以,唯独FtpCommand不能,怎样才可以给FTP SERVER发送命令 如何将对话框用于View中(**高手救火**) 一个初学者最菜的问题
clock_t start, end;
start = clock();
your code...
end = clock();
time = end - start;
结果为ms
#include <windows.h>
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
LARGE_INTEGER t1,t2,feq;
int b=0;
QueryPerformanceFrequency(&feq);//每秒跳动次数
QueryPerformanceCounter(&t1);//测前跳动次数
for(int i=0;i<100;i++) b++;
QueryPerformanceCounter(&t2);//测后跳动次数
double d=((double)t2.QuadPart-(double)t1.QuadPart)/((double)feq.QuadPart);//时间差秒
std::cout<<setprecision(20)<<showpoint<<std::endl;//小数点表示20位
std::cout<<d<<std::endl;
return 0;
}
DWORD a,b;
a=GetTickCount();
for(int i=0;i<10000;i++)
{
YourFun();
}
b=GetTickCount();
(b-a)/10000就时程序运行的时间单位ms