考试首页 | 考试用书 | 培训课程 | 模拟考场 | 考试论坛  
  当前位置:操作系统 > Linux > 文章内容
  

Linux基础教程:基于Linux整形时间的常用计算思路

 [ 2016年2月29日 ] 【

常用函数实现

//获取tNow时间的当天零点时间值,零点作为一天的第一秒

time_t GetTodayZeroTime(time_t tNow)

{

    return ( ( (tNow - 57600)/86400 )*86400 + 57600 );

}

 

//判断两个时间是否在同一天, 一天的概念为00:00:00到23:59:59

bool IsInSameDay(time_t tTm1, time_t tTm2)

{

    return ( (tTm1 - 57600) / 86400 == (tTm2 - 57600) / 86400 );

}

 

//获取tNow时间所在这一周的开始时间,即这周周一的0点0分0秒

//计算思路,1980-01-07是周一,这一天0点的整形时间为316022400(按中国时区)

time_t GetWeekBeginTime(time_t tNow)

{

    return ( (tNow - 316022400) / 604800 * 604800 + 316022400 );

}

 

//获取tNow时间所在这一周的结束时间,即这周周日的23点59分59秒

time_t GetWeekEndTime(time_t tNow)

{

    return ( (tNow - 316022400) / 604800 * 604800 + 316627199 );    //316022400 + 604800 - 1 );

}

 

//判断两个时间是否在同一周, 一周的概念为周一的00:00:00到周日的23:59:59

bool IsInSameWeek(time_t tTm1, time_t tTm2)

{

    return ( (tTm1 - 316022400) / 604800 == (tTm2 - 316022400) / 604800 );

}

本文纠错】【告诉好友】【打印此文】【返回顶部
将考试网添加到收藏夹 | 每次上网自动访问考试网 | 复制本页地址,传给QQ/MSN上的好友 | 申请链接 | 意见留言 TOP
关于本站  网站声明  广告服务  联系方式  站内导航  考试论坛
Copyright © 2007-2013 中华考试网(Examw.com) All Rights Reserved