tosec.c

来自「单片机C源程序souce」· C语言 代码 · 共 25 行

C
25
字号
/*******************************************************************************
*                                                                             
* 函 数 名:tosec                                                            
* 原   型:ulong tosec(uchar hour,uchar min,uchar sec,uchar date,uchar mon,uint year)                    
* 功能描述:将年月日时分秒,转换为距1980年1月1日0时0分0秒的绝对时间           
* 输   入:非符号字符型 hour时,min分,sec秒,date日,mon月;非符号短整型 year年                                               
* 输   出:无                                                                
* 返   回:非符号长整型 距1980年1月1日0时0分0秒的时间差值,秒级              
*******************************************************************************/
extern unsigned long tosec(unsigned char hour, unsigned char min, unsigned char sec, unsigned char date, unsigned char mon, unsigned int year)
{
// 月份日期总数表
    unsigned int code mon_days[] = {0,0,31,59,90,120,151,181,212,243,273,304,334}; 
    unsigned long tday;
    year -= 1900;
    tday  = 365*(year-70) + mon_days[mon] + date - 1;
    tday += (year-69)/4;
    if ((mon > 1) && ((year % 4) == 0)) 
    {
        tday++;
    }
    tday =sec + 60*min + 3600*(hour + 24*tday)- 315532800;
   return tday;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?