我正在制作一段代码,告诉我代码块的时间是多少?#34;采取执行。
我解决这个问题的方法是创建两个timer_t
实例,给第一个实例提供当前时间的开始执行#34;代码块"然后在第二个实例完成执行时给出当前时间。然后我将两个实例的差异计算出运行时间。
代码如下所示:(使用Visual Studio)
#include "stdafx.h"
#include<stdio.h>
#include<conio.h>
#include<iostream>
#include<Windows.h>
#include<stdlib.h>
#include<time.h>
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
srand((unsigned)time(NULL));
for(int i=0;i<10;i++)
{
cout<<rand()%100<<endl;
}
cout<<endl;
time_t timernow,timerthen;
timernow=time(NULL);
Sleep(300);
timerthen=time(NULL);
cout<<"Elapsed time: "<<timerthen-timernow;
_getch();
return 0;
}
但问题是它只给我几秒钟的时间(在这种情况下为0而不是0.3)但是我希望时间以毫秒左右为单位。是否有可能提高分辨率/时间精度? 谢谢。