等待/暂停C中的秒数

我写了一个小的控制台应用程序,我希望它在循环(一段时间)再次开始之前暂停几秒钟。

我正在使用Windows操作系统。

Solutions Collecting From Web of "等待/暂停C中的秒数"

在Windows上,执行此操作的函数是Sleep ,它需要您要休眠的毫秒量。 要使用Sleep ,您需要包含windows.h

在POSIX系统上,函数sleep (来自unistd.h )完成了这个工作:

  unsigned int sleep(unsigned int seconds); DESCRIPTION sleep() makes the calling thread sleep until seconds seconds have elapsed or a signal arrives which is not ignored. 

如果信号中断,则返回剩余的睡眠时间。 如果你使用信号,更强大的解决方案是:

  unsigned int time_to_sleep = 10; // sleep 10 seconds while(time_to_sleep) time_to_sleep = sleep(time_to_sleep); 

这当然假定你的信号处理程序只需要很少的时间。 (否则,这会延误主程序的时间超过预期)

简单:

 while( true ) { // your stuff sleep( 10 ); // sleeping for 10 seconds }; 

UNIX上

 #include <unistd.h> sleep(10000); // 10 seconds 

Windows上

 #include <windows.h> Sleep(10000); // 10 seconds 

请注意sleep() (UNIX)和Sleep() (Windows)之间的区别。