我试图了解一个数字的旋转速度。
我有一个程序,计数器从0开始
每次用户点击“添加1”按钮。它将计数器递增1.
计数器最大值为255.在255之后它返回到0
现在我想显示从0增加到最大值并返回0所需的秒数。完整旋转的时间。用户点击按钮的速度会有所不同。
我需要知道的是如何使用计时器?程序完成了我需要编码的数字完整旋转之间的计时器。
我正在使用
#include <time.h> //* clock_t, clock, CLOCKS_PER_SEC
请指教。谢谢。
int counter;
counter = pkt[0];
cout << endl;
cout << counter << endl;
if(counter == 1)
{
cout << "revolution" << endl;
}
答案 0 :(得分:3)
如果你可以使用C ++ 11,<chrono>
可能是个不错的选择。
它包含:
<强>持续时间强>
他们测量时间跨度,例如:一分钟,两小时或十毫秒。 在这个库中,它们用持续时间类模板的对象表示,它耦合计数表示和周期精度(例如,10毫秒有十个作为计数表示,毫秒作为周期精度)。
时间点
对特定时间点的引用,例如一个人的生日,今天的黎明,或下一班火车经过的时间。 在这个库中,time_point类模板的对象通过使用相对于纪元的持续时间来表达这一点(这是使用相同时钟的所有time_point对象共有的固定时间点)。
<强>时钟强>
将时间点与实际物理时间联系起来的框架。 该库提供至少三个时钟,提供将当前时间表示为time_point的方法:system_clock,steady_clock和high_resolution_clock。
答案 1 :(得分:0)
difftime
可用于获取两个时间实例之间的差异。 difftime页面上的示例代码提供了您要查找的内容。
答案 2 :(得分:0)
#include <ctime>
time_t start = time(NULL);
将显示自UTC时间1970年1月1日00:00后经过的秒数。如果您将其放在要跟踪的代码的开头,那么当您想要计算执行完整旋转所需的时间时,您只需要再次花时间。然后得到差异。 difftime
可以帮助您发挥作用。不要把它当作一个真正运行的计时器。你只是在革命之前和之后得到时间并找到差异。