我有一个运行在do while循环中的while循环。我需要while循环正好每秒运行不会更快,也不会更慢。但我不知道我会怎么做。这是循环,关闭它自己的功能。我听说过sleep()函数,但我也听说它不是很准确。C++中的延迟循环输出
int min5()
{
int second = 00;
int minute = 0;
const int ZERO = 00;
do{
while (second <= 59){
if(minute == 5) break;
second += 1;
if(second == 60) minute += 1;
if(second == 60) second = ZERO;
if(second < 60) cout << "Current Time> "<< minute <<" : "<< second <<" \n";
}
} while (minute <= 5);
}
大多数操作系统都不是实时操作系统。您无法每次都获得精确的1秒分辨率。睡眠()是你最好的选择。它让操作系统决定如何最好地延迟,尽可能接近指定的时间间隔。 – 2010-05-04 18:57:45
什么操作系统? – 2010-05-04 18:58:09
你需要什么样的准确性?基于你在这里展示的代码,睡眠很可能足够好。 – 2010-05-04 19:00:22