gpt4 book ai didi

C 中的 clock() 函数总是至少返回 50

转载 作者:行者123 更新时间:2023-12-02 04:52:37 25 4
gpt4 key购买 nike

我不是程序员,但我最近对编码产生了兴趣,开始自己学习 C,然后我开始用它解决来自 ProjectEuler.net 的问题。

我一直在我编写的每个源代码末尾添加这两行:

printf ( "The number you are looking for is %d", 0 );
printf ( "\n... and took %d / %d seconds to compute that", clock(), CLOCKS_PER_SEC );

...我将零替换为我需要的数字作为答案。

事情是;无论我如何优化我的工作,printf 都不会显示少于 50 个时钟,即使我使用一个完全空白的源代码,除了这两个之外没有其他操作,它仍然显示 50 个时钟。是 #include 花费了这 50 个时钟,还是其他原因?

我的一些填充源代码也显示 50 个时钟;所以...我不知道在这里可以推断出什么,我写的一些东西真的需要 0 毫秒才能解决吗?

最佳答案

您的系统时钟每隔一段时间“滴答”一次(也许每 50 毫秒一次?),而不是连续运行。因此,clock() 函数测量您的进程自启动以来所消耗的这些“滴答声”的数量。这种方法不太适合测量短于一个滴答的持续时间。

如果您想要更高的精度,则必须使用高分辨率计时器

关于C 中的 clock() 函数总是至少返回 50,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18553080/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com