CLOCKS_PER_SEC与std::clock()的结果不匹配

CLOCKS_PER_SEC Not Matching Results From std::clock()

本文关键字:结果 不匹配 clock SEC std CLOCKS PER      更新时间:2023-10-16

我正在使用以下短程序测试std::clock():

#include <ctime>
#include <iostream>
int main()
{   
    std::clock_t Begin = std::clock();
    int Dummy;
    std::cin >> Dummy;
    std::clock_t End = std::clock();
    std::cout << "CLOCKS_PER_SEC: " << CLOCKS_PER_SEC << "n";
    std::cout << "Begin: " << Begin << "n";
    std::cout << "End: " << End << "n";
    std::cout << "Difference: " << (End - Begin) << std::endl;
}

然而,在等待几秒钟输入"伪"值后,我得到了以下输出:

CLOCKS_PER_SEC: 1000000
Begin: 13504
End: 13604
Difference: 100

这显然没有多大意义。无论我等多久,差距总是在100左右。

我错过了什么?有没有我忘了包括的信头?

我使用的是带有GCC 4.2的Xcode。

clock()计算CPU时间,因此如果它坐在那里等待输入,则不会添加任何时间。