1、条件成立则开启定时器
int count = 0;
int flag = 1;
while(1)
{
if(count>0) //计数器
{
count--;
}
if(flag == 1)
{
flag = 0;
count = 1000; //启动计数器
count<<"hello";
//do sth.
}
}
2、固定时间定时
int count = 0;
int flag = 1;
while(1)
{
if(count>0) //计数器
{
count--;
if(count == 0)
flag = 1;
}
if(flag)
{
flag = 0;
count = 1000; //启动计数器
count<<"hello";
}
}
程序是通过count--的方式来完成计数的;
是通过为计数器赋最大计数值的形式启动计数器的。
if(count>0) //计数器
{
count--;
if(count == 0)
flag = 1;
}
这段程序的巧妙之处在于,完成计数后,计数器归零,又回到了初始的状态。
可以看到,只要count数不重新初始化(启动)的话,计数器(定时器)只执行了一次,这样看起来很简洁。(不需要flag来保证,只执行一次。)
int count = 1000;
int flag = 1;
while(1)
{
if(count<1000) //计数器
{
count++;
if(count == 1000)
flag = 1;
}
if(flag)
{
flag = 0;
count = 0; //启动计数器
count<<"hello";
}
}
当然也可以通过++的方式来计数,但是不符合使用习惯。