我一直想要一个暂停功能,现在我找到了。作为 C 的初学者,我不能确定,但它看起来像 <clock.h>
中的函数.
我想将它实现到我的代码中,但不是不理解它。
void wait(int seconds){
clock_t start, end;
start = clock();
end = clock();
while (((end-start) / CLOCKS_PER_SEC) = !seconds)
end = clock();
}
最佳答案
这只是一个忙等待循环,这是实现延迟的一种非常讨厌的方式,因为它在什么都不做的情况下将 CPU 固定在 100%。使用 sleep()相反:
#include <unistd.h>
void wait(int seconds)
{
sleep(seconds);
}
另请注意,问题中给出的代码存在错误:
while (((end-start) / CLOCKS_PER_SEC) = !seconds)
应该是:
while (((end-start) / CLOCKS_PER_SEC) != seconds)
或者更好:
while (((end-start) / CLOCKS_PER_SEC) < seconds)
(但如上所述,您甚至不应该使用此代码)。
关于有人可以给我解释一下这个功能吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35196530/