如何在C编程中获取当前时间(以毫秒为单位)

时间:2011-12-19 08:13:10

标签: c time.h

  

可能重复:
  How to measure time in milliseconds using ANSI C?
  How can I get the Windows system time with millisecond resolution?

我们想要计算玩家完成游戏所需的时间。 但是对于time.h,我们只能在几秒钟内计算出来。但这并不准确。是否有可能以毫秒为单位获得时间? 什么是%? printf?

3 个答案:

答案 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并将结果从微秒转换为毫秒。