C++获取礼拜一的时间戳

C++获取礼拜一的时间戳,第1张

获取礼拜一的时间戳

UINT64 GetWeekBeginTime()
{
  time_t t;
  t = time(0);
  tm* t_tm = localtime(&t);
  t_tm->tm_hour = 0;
  t_tm->tm_min = 0;
  t_tm->tm_sec = 0;
  t_tm->tm_wday = 0; 不生效
  t = mktime(t_tm);
  return (UINT64)t;
}

源码没有用到这个逻辑

问题 从现网拉到的函数存在问题 直接置 wday为0 在某些编译器下无法生效 所以优化了下逻辑

time_t getWeekFirstTimeStamp()
{
    time_t t;
    t = time(0);
    tm *t_tm = localtime(&t);
    t_tm->tm_hour = 0;
    t_tm->tm_min = 0;
    t_tm->tm_sec = 0;
    t_tm->tm_mday = t_tm->tm_mday - t_tm->tm_wday + 1;
    t_tm->tm_wday = 0;
    t = mktime(t_tm);
    return t;
}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/713589.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-24
下一篇 2022-04-24

发表评论

登录后才能评论

评论列表(0条)

保存