请问这段C++代码的意思

2024-11-30 05:10:25
推荐回答(5个)
回答1:

start 是进入while循环之前的时钟。
while循环中每次循环都会调用clock(),产生的当前时钟,clock() - start 就是从进入while循环到当前时间之间的时间间隔,这样当clock() - start < delay,也就是时间间隔小于delay的话就一直循环,知道delay的时候推出循环

回答2:

start是当前时间
clock()也是当前时间
delay是你设定的秒数
while (clock() - start < delay)开始循环,cock()一开始(clock() - start =0),然后开始不断变大,
当到达你设定的时间时,实际上这个时间是start+delay。,这时满足跳出循环的条件,所以打印了“done”

回答3:

写成这样你就明白了:
while(true)
{
clock_t now= clock();//当前时间
if (now- start >= delay)//如果当前时间与开始时间的差大于等于你输入的间隔,退出循环。如果小于,说明还没到你指定的延迟时间,继续循环.......
break;
}

你那种写法是简写形式,把条件直接放在while()里面了,道理一样。

回答4:

while (clock() - start < delay);
//第二或者第N次调用clock()返回的是从第一次调用后经过的毫秒数。当返回值小于你输入的值(秒)*1000毫秒时,继续执行while()函数,while函数什么都没做就是一直在调用clock()返回经过的时间,故而实现让程序暂停你设置的秒数的功能。

如有不对望纠正,希望能帮到你的忙。

回答5:

clock()函数获取当前的时间值,与一开始记录时间作差。来与延迟进行比较,注意没底调用clock()都会根据时刻不同,返回不通知。