【问题标题】:calculating run time of program in virtual machine [duplicate]计算虚拟机中程序的运行时间
【发布时间】:2013-07-30 23:59:54
【问题描述】:

我正在使用下面的代码来获取我的程序的总时间。

clock_t start=clock();
//doing some work
clock_t end=clock();
printf("%f \n",(double)(end-start)/(double)CLOCKS_PER_SEC);

我正在虚拟机中运行我的程序。它总是告诉我0.000000!你知道为什么吗?是VM的原因吗?

【问题讨论】:

    标签: c linux virtual-machine clock


    【解决方案1】:

    您尝试使用具有双精度值的整数格式说明符进行打印。

    试试:

    printf("%f \n",(double)(end-start)/(double)CLOCKS_PER_SEC);
    

    编辑:刚刚发现 this answer 应该可以解决您的问题。

    【讨论】:

    • 抱歉,是 %f 打印双倍。在这里打错字。
    • 您能否分别打印startstop 以检查它们是否实际上是相同的值?
    • 已更新答案并附有修复链接。
    猜你喜欢
    • 2014-01-08
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多