在程序中编写延时循环——让程序等等人
顾名思义,让程序“等一下”然后继续执行。即延时执行。
简单方法
让计算机循环一个很大的数,进行等待
long wait = 0;
while(wait<10000)
{
wait++;
}
更方便的方法
使用系统时钟。
ANSI C 和 C++库中有clock()函数,该函数返回的是程序开始执行后所用的系统时间。但是,其返回值不一定是秒,而且返回类型在一些系统中是long,另外一些系统中是unsigned long或其他类型。
要更加方便,可以使用< ctime >。
头文件ctime中,定义了一个每秒钟包含的系统时间单位数的符号常量CLOCKS_PER_SEC,所以用系统时间除以这个,可以得到秒数;秒数乘以这个,得到以系统时间单位为单位的时间。
clock_t类型,是clock()返回类型的别名。所以,用下面代码,就可以方便的用ctime头文件和clock()一起创建一个延迟循环。
在计算时间的时候,使用系统时间单位为单位计算延迟时间,就不用把系统时间再转换成秒了。
#include<ctime>
#include<iostream>
using namespace std;
int main()
{
float secs = 1;
//假定要延迟1秒
clock_t delay = secs * CLOCKS_PER_SEC;
//转换成需要延迟的 以系统时间单位为单位的 时间。
clock_t start = clock();
//记录起始时间
while(clock()-start<delay) ;
//只要当前时间减去起始时间(这个时间段)比设定的延迟小
return 0;
}
可以联系之前做过的空战游戏,控制敌机的下落速度。