Вопрос по времени!!!

 

Всем привет!
Назрел такой вот вопрос: как определить находится ли текущее время в интервале (00:00, 13:20) текущего же дня, т.е. если находится, то выставить 2 отложенника, если нет, то не выставлять.
Я честно говоря запутался во всех этих функциях времени, помогите пожалуйста.

 
bob:

Всем привет!
Назрел такой вот вопрос: как определить находится ли текущее время в интервале (00:00, 13:20) текущего же дня, т.е. если находится, то выставить 2 отложенника, если нет, то не выставлять.
Я честно говоря запутался во всех этих функциях времени, помогите пожалуйста.

Можно, например, вот так:
//---- время начала
extern int StartHr = 0; //часы
extern int StartMin = 0; //минуты
 
//---- время окончания
extern int EndHr = 13; //часы
extern int EndMin = 20; //минуты
 
//---- проверка нахождения переменной между двумя другими
bool IsBetween(int Value, int Min = 0, int Max = EMPTY_VALUE, bool Include = true)
  {
   bool res = Value > Min && Value < Max;
   if (Include && !res) 
      res = (Value == Min) || (Value == Max);
   return (res);
  }
 
int start()
  {
//********* что-то там такое выполняется
//---- и вот мы начинаем!
   static bool Done = false; //сделали мы это уже или нет
   if (!Done)
     {
      int Hr = Hour(), Min = Minute();
      if (IsBetween(Hr, StartHr, EndHr, false) ||
          ((Hr==StartHr) && (Min>=StartMin))  ||
          ((Hr==EndHr  ) && (Min<=EndMin  )))
        {
         Done = true;
         //выставляем два отложенника
        }
     }
//---- здесь мы заканчиваем
//********* и что-то такое продолжает выполняться
  }
 
Спасибо, Дима, попробую!!!
Причина обращения: