我想知道上述常量的返回值之间有什么区别。

sysconf(_SC_CLK_TCK)返回100
CLOCKS_PER_SEC返回1,000,000

所以,假设我有这个:

...
start = clock();
// Process starts here
/* does something */
// Process ends here
end = clock();
double time = ((double) end-start)/CLOCK_PER_SEC; // this would return in seconds
...

如何计算流程使用的滴答声数量而不是时间?我是否将时间用于sysconf(_SC_CLK_TCK)或CLOCK_PER_SEC?

我试图了解这些用法。

最佳答案

根据文档,clock()CLOCKS_PER_SEC的分辨率返回时间。

其他时间函数返回带有刻度的分辨率的值。 sysconf(_SC_CLK_TCK)提供每秒的滴答数。这样的时间函数之一就是times()

关于c - sysconf(_SC_CLK_TCK)与CLOCKS_PER_SEC,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39712808/

10-12 18:01