计算当前时间到星期N之间的时间差

来源:互联网 发布:赛迪智库待遇知乎 编辑:程序博客网 时间:2024/06/07 08:03
#include <iostream>#include <string>#include <boost/date_time/gregorian/gregorian.hpp>#include <boost/date_time/posix_time/posix_time.hpp>using namespace boost::posix_time;using namespace boost::gregorian;const std::string gStartDateTime = "2013-11-25 00:00:00";  // 周日 24点const unsigned int gCycleLong = 7 * 24 * 60 * 60;          // 7 天是一个周期#define ASSERT_RETURN(expr, ret) if (!(expr)) {return ret;}unsigned int CountSecond(){    time_t tt = time(NULL);    ptime pTimeStart = time_from_string(gStartDateTime);    tm tStart = to_tm(pTimeStart);    time_t tt2 = mktime(&tStart);    ASSERT_RETURN(tt2 < tt, false);        return gCycleLong - (tt - tt2) % gCycleLong;}

// 从当前时间到星期日 24:00:00点的时间差(second),算法很简单,只是当前听到这个需求纠结了一下(当时觉得很高端),这里记录一下


原创粉丝点击