__DATE__ 和 __TIME__ 转换为秒数

__DATE__ = "*** ** ****" 加上字符串结束符共计12个字节

__TIME__ = "**:**:**" 加上字符串结束符共计9个字节


#define MONTH_IS_JAN (__DATE__[0] == 'J' && __DATE__[1] == 'a' && __DATE__[2] == 'n')
#define MONTH_IS_FEB (__DATE__[0] == 'F')
#define MONTH_IS_MAR (__DATE__[0] == 'M' && __DATE__[1] == 'a' && __DATE__[2] == 'r')
#define MONTH_IS_APR (__DATE__[0] == 'A' && __DATE__[1] == 'p')
#define MONTH_IS_MAY (__DATE__[0] == 'M' && __DATE__[1] == 'a' && __DATE__[2] == 'y')
#define MONTH_IS_JUN (__DATE__[0] == 'J' && __DATE__[1] == 'u' && __DATE__[2] == 'n')
#define MONTH_IS_JUL (__DATE__[0] == 'J' && __DATE__[1] == 'u' && __DATE__[2] == 'l')
#define MONTH_IS_AUG (__DATE__[0] == 'A' && __DATE__[1] == 'u')
#define MONTH_IS_SEP (__DATE__[0] == 'S')
#define MONTH_IS_OCT (__DATE__[0] == 'O')
#define MONTH_IS_NOV (__DATE__[0] == 'N')
#define MONTH_IS_DEC (__DATE__[0] == 'D')


 int sum=0;
 int year = ((__DATE__[7]-'0')*1000 + (__DATE__[8]-'0')*100 + (__DATE__[9]-'0')*10 + (__DATE__[10]-'0'));
 int month = ((MONTH_IS_JAN) ? 1 :(MONTH_IS_FEB) ? 2 :(MONTH_IS_MAR) ? 3 :(MONTH_IS_APR) ? 4 :(MONTH_IS_MAY) ? 5 :(MONTH_IS_JUN) ? 6 :(MONTH_IS_JUL) ? 7 :\
              (MONTH_IS_AUG) ? 8 :(MONTH_IS_SEP) ? 9 :(MONTH_IS_OCT) ? 10 :(MONTH_IS_NOV) ? 11 :(MONTH_IS_DEC) ? 12 : 0);
 int day = (__DATE__[4]-'0')*10 + (__DATE__[5]-'0');
 int hour = ((__TIME__[0]-'0') * 10 + (__TIME__[1]-'0'));
 int min  = ((__TIME__[3]-'0' )* 10 + (__TIME__[4]-'0'));
 int sec  = ((__TIME__[6]-'0' )* 10 + (__TIME__[7]-'0'));
 //sum = sec + min*60 + hour*3600 + day*24*3600 + month*30*24*3600 + (year-2000)*12*30*24*3600;
 sum = sec + min*60 + hour*3600 + day*86400 + month*2592000 + (year-2000)*31104000;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值