可能重复:
How to measure time in milliseconds using ANSI C?
How can I get the Windows system time with millisecond resolution?
我们想要计算玩家完成游戏所需的时间。 但是对于time.h,我们只能在几秒钟内计算出来。但这并不准确。是否有可能以毫秒为单位获得时间? 什么是%? printf?
答案 0 :(得分:19)
在标准C中没有可移植的方法来获得不到一秒的分辨率所以你最好能够使用POSIX函数 gettimeofday() 。
答案 1 :(得分:13)
快速回答
#include<stdio.h>
#include<time.h>
int main()
{
clock_t t1, t2;
t1 = clock();
int i;
for(i = 0; i < 1000000; i++)
{
int x = 90;
}
t2 = clock();
float diff = ((float)(t2 - t1) / 1000000.0F ) * 1000;
printf("%f",diff);
return 0;
}
答案 2 :(得分:2)
如果您使用的是类Unix系统,请使用gettimeofday
并将结果从微秒转换为毫秒。