Здравствуйте, alex-ikar, Вы писали:
AI>Помогите решить проблему.
AI>С помощью класса CTime получаю тек. дату (ГГГГММДД) и все ОК.
AI>AI>CTime currentTime = CTime::GetCurrentTime();
AI>YYYY = atoi(currentTime.Format("%#Y"));
AI>MM = atoi(currentTime.Format("%#m"));
AI>DD = atoi(currentTime.Format("%#d"));
AI>WorkingDate = ((((YYYY * 100) + MM) * 100) + DD);
AI>
AI>Но как мне получить предыдущую дату?
AI>(для месяца и года это не проблема — можно просто отнять 1, но как быть с числом не знаю ведь в месяцах разное число дней, плюс еще и год может быть весокосный)
AI>AI>if (DD == 1)
AI>{ if (MM == 1) // если текущий месяц = 1, то предыдущая дата = 31.12.(YYYY-1)
AI> { YYYY = YYYY - 1;
AI> MM = 12;
AI> DD = 31; } else { MM = MM - 1;
AI> DD = ? ? ? ?; }
AI>} else { DD = DD - 1; }
AI>
AI>Может вообще есть какая-нить ф-ция или алгоритм ?
AI>Заранее спасибо.
CTimeSpan oneDay(1, 0, 0, 0);
CTime current = CTime::GetCurrentTime();
CTime previous = current - span;