程序在C和C中导致1秒延迟,而不是打印内容

程序在C和C中导致1秒延迟,而不是打印内容,c,C,范例 第1节-- 第2节-- 第3节-- 每次打印应有1秒的延迟。#包括 #include <windows.h> ... Sleep(timeInMilliseconds); //sleeps the current thread ... 睡眠时间(毫秒)//休眠当前线程 hth在您的问题中没有任何其他信息的情况下 您应该在几乎任何C环境中都能找到sleep函数(请注意,它都是小写)。它通常在time.h或unistd.h中,并接受它应该延迟执行的秒数 许多环境也会有nan

范例 第1节--
第2节--
第3节--

每次打印应有1秒的延迟。

#包括
#include <windows.h>

...

Sleep(timeInMilliseconds); //sleeps the current thread
... 睡眠时间(毫秒)//休眠当前线程
hth

在您的问题中没有任何其他信息的情况下

您应该在几乎任何C环境中都能找到
sleep
函数(请注意,它都是小写)。它通常在
time.h
unistd.h
中,并接受它应该延迟执行的秒数

许多环境也会有
nanosleep
,这是一种接受纳秒数而不是秒数的等价物。在许多系统上也是在
time.h


归根结底,您的C环境很可能会提供这样的功能,无论它是
睡眠
\u睡眠
睡眠
,还是其他类似的功能,无论它接受秒、纳秒还是毫秒。您必须参考您环境的文档才能找到具体的版本。

不幸的是,没有可移植版本的
sleep()
,因此您可以使用
time.h
中的标准函数编写
delay()
函数,如下所示:

void delay(int seconds)
{
    time_t t = time(NULL);
    while (difftime(time(NULL), t) < seconds) ;
}
void延迟(整数秒)
{
时间t=时间(空);
while(difftime(time(NULL),t)<秒);
}

请注意,这并不理想,因为它会让cpu在延迟期间保持忙碌。

到目前为止,您有什么,它是如何工作的?这将是一个家庭作业。我想不出任何功能,也想不到提问者在哪里说“Windows”?@t.J.Crowder:没有。我的答案是Windows的一个解决方案这不是睡眠——它是在超过一定时间后再固定CPU。@Kent:公平地说,OP没有说他想让进程睡眠。耽搁一下。忙碌的等待会延迟事情的进展当然,这不是一个好的解决方案,但是…@Kent和@T.J.我同意你们两个的观点。我已经修改了函数名,以明确它是一个延迟,根据操作。这看起来只是一个家庭作业,所以它以可移植的方式回答了这个问题,我同意它并不理想。@LittledV它可能不是家庭作业,如何实现延迟是一个合理的问题。其他答案都是很好的解决方案,但如果不了解平台,它们可能无法回答问题。因此,我已经演示了如何以可移植的方式执行此操作。除非您在windows上,否则它的大写字母是
Sleep(ms)
@RedX:Yes,
Sleep
在windows上(需要毫秒而不是秒),或者在其他一些系统上是
\u Sleep
。同样,OP没有提供任何有用的上下文,所有的一件事通常都指向正确的方向…:-)