亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? wce_mktime.c

?? Package of C library extensions for Windows CE operating system. It is a supplement to C library ava
?? C
字號(hào):
/*
 * $Id: wce_mktime.c,v 1.2 2006/04/09 16:48:18 mloskot Exp $
 *
 * Defines functions to convert struct tm to time_t value.
 *
 * Created by Mateusz Loskot (mateusz@loskot.net)
 *
 * Copyright (c) 2006 Taxus SI Ltd.
 *
 * Permission is hereby granted, free of charge, to any person obtaining
 * a copy of this software and associated documentation files (the "Software"),
 * to deal in the Software without restriction, including without limitation 
 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
 * and/or sell copies of the Software, and to permit persons to whom 
 * the Software is furnished to do so, subject to the following conditions:
 * 
 * The above copyright notice and this permission notice shall be included
 * in all copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 * IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 * CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 * TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
 * THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 *
 * MIT License:
 * http://opensource.org/licenses/mit-license.php
 *
 * Contact:
 * Taxus SI Ltd.
 * http://www.taxussi.com.pl
 *
 */

#include <wce_time.h>
#include <windows.h>

/* Function used intenally to convert struct tm to a time_t value. */
static time_t __wceex_mktime_internal(struct tm *tmbuff, time_t _loctime_offset);

/*******************************************************************************
* wceex_mktime - Convert local time to calendar value in seconds since epoch.
*******************************************************************************/
time_t wceex_mktime(struct tm *tmbuff)
{
    time_t offset;
    TIME_ZONE_INFORMATION tzi;
    
    offset = 0;

    // Retrive timezone offset in seconds
	if (GetTimeZoneInformation(&tzi) != 0xFFFFFFFF)
	{
		offset += (tzi.Bias * 60);
		if (tzi.StandardDate.wMonth != 0)
        {
			offset += (tzi.StandardBias * 60);
        }
	}

    return __wceex_mktime_internal(tmbuff, offset);
}


/*******************************************************************************
* wceex_gmmktime - Get Unix timestamp for a GMT date
*
* Description:
*   Given a struct tm representing a calendar time in UTC, convert it to
*   seconds since epoch.
*   Note that this function does not canonicalize the provided
*   struct tm, nor does it allow out of range values or years before 1970.
*   The tm struct values of tm_wday and tm_yday are ignored.
*
* Return:
*   Value of time if success, otherwise (time_t)-1 is returned.
*       
*******************************************************************************/
time_t wceex_gmmktime(struct tm *tmbuff)
{
    return __wceex_mktime_internal(tmbuff, 0);
}

/*******************************************************************************
* __wceex_mktime_internal - Convert struct tm to a time_t value.
*
* Description:
*   Use offset as difference in seconds between local time and UTC time.
*
/*******************************************************************************/

/* The number of days in each month. */
#define MONTHS_NUMBER 12

static const int MONTHDAYS[] = { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };

static time_t __wceex_mktime_internal(struct tm *tmbuff, time_t _loctime_offset)
{
    time_t tres;
    int doy;
    int i;

    /* We do allow some ill-formed dates, but we don't do anything special
    with them and our callers really shouldn't pass them to us.  Do
    explicitly disallow the ones that would cause invalid array accesses
    or other algorithm problems. */
    if (tmbuff->tm_mon < 0 || tmbuff->tm_mon > 11 || tmbuff->tm_year < (EPOCH_YEAR - TM_YEAR_BASE))
    {
        return (time_t) -1;
    }

    /* Convert calender time to a time_t value. */
    tres = 0;

    /* Sum total amount of days from the Epoch with respect to leap years. */
    for (i = EPOCH_YEAR; i < tmbuff->tm_year + TM_YEAR_BASE; i++)
    {
        tres += 365 + IS_LEAP_YEAR(i);
    }

    /* Add days of months before current month. */
    doy = 0;
    for (i = 0; i < tmbuff->tm_mon; i++)
    {
        doy += MONTHDAYS[i];
    }
    tres += doy;
    
    /* Day of year */
    tmbuff->tm_yday = doy + tmbuff->tm_mday;

    if (tmbuff->tm_mon > 1 && IS_LEAP_YEAR(tmbuff->tm_year + TM_YEAR_BASE))
    {
        tres++;
    }
    
    /* Add days of current month and convert to total to hours. */
    tres = 24 * (tres + tmbuff->tm_mday - 1) + tmbuff->tm_hour;

    /* Add minutes part and convert total to minutes. */
    tres = 60 * tres + tmbuff->tm_min;

    /* Add seconds part and convert total to seconds. */
    tres = 60 * tres + tmbuff->tm_sec;
    
    /* For offset > 0 adjust time value for timezone
    given as local to UTC time difference in seconds). */
    tres += _loctime_offset;
    
    return tres;
}


?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
不卡一卡二卡三乱码免费网站 | 精品一区二区三区免费观看| 中文字幕欧美激情| 欧美日韩国产高清一区二区三区 | **性色生活片久久毛片| 日韩欧美一级精品久久| 91丨九色丨蝌蚪富婆spa| 极品销魂美女一区二区三区| 亚洲精品欧美激情| 欧美激情一区在线观看| 日韩一区二区三区四区五区六区| bt欧美亚洲午夜电影天堂| 精品一区二区久久久| 亚洲高清免费一级二级三级| 国产欧美一区二区精品秋霞影院 | www.成人在线| 久草中文综合在线| 日韩高清在线观看| 亚洲精品免费在线播放| 1000精品久久久久久久久| 国产三级精品视频| 久久精品水蜜桃av综合天堂| 91精品国产入口| 欧美日韩不卡在线| 欧美日韩在线三级| 色婷婷久久久久swag精品| 99这里只有久久精品视频| 高清不卡在线观看| 国产一区二区三区高清播放| 久久av老司机精品网站导航| 免费三级欧美电影| 免费在线观看视频一区| 日韩成人一区二区三区在线观看| 亚洲图片欧美视频| 亚洲一区二区三区爽爽爽爽爽| 欧美激情中文字幕一区二区| 不卡av在线免费观看| 久久久久久久久久电影| gogogo免费视频观看亚洲一| 国产成人精品影院| 成人精品一区二区三区中文字幕| 国产伦精品一区二区三区免费| 国内精品伊人久久久久av一坑| 蜜臀av性久久久久蜜臀aⅴ四虎| 免费日韩伦理电影| 韩国视频一区二区| 国产老肥熟一区二区三区| 国产综合成人久久大片91| 国产成人免费视频一区| 成人久久久精品乱码一区二区三区| 国产91精品免费| 99久久伊人精品| 欧美伊人精品成人久久综合97| 91官网在线免费观看| 欧美日韩国产一级片| 日韩一区二区三区视频| 精品乱人伦小说| 欧美激情一二三区| 亚洲美女少妇撒尿| 天天操天天色综合| 国产综合一区二区| 91丝袜高跟美女视频| 色婷婷综合在线| 日韩欧美国产综合一区| 欧美韩国日本不卡| 亚洲精品国产一区二区三区四区在线| 亚洲综合激情另类小说区| 天堂一区二区在线免费观看| 精品在线观看视频| 91免费版在线看| 欧美一级专区免费大片| 2023国产精品自拍| 日韩理论片一区二区| 五月激情六月综合| 国产超碰在线一区| 欧美日韩在线免费视频| 国产亚洲欧美在线| 亚洲一区二区精品3399| 激情成人午夜视频| 日本韩国欧美在线| 久久丝袜美腿综合| 亚洲午夜视频在线观看| 国产精品一区二区无线| 欧美主播一区二区三区美女| 久久综合色天天久久综合图片| 1024成人网| 久久66热re国产| 欧美性一区二区| 国产亚洲欧洲997久久综合| 暴力调教一区二区三区| 欧美另类一区二区三区| 国产日韩欧美电影| 天天av天天翘天天综合网色鬼国产| 国产精品一区一区| 欧美一区二区免费观在线| 中文字幕亚洲一区二区va在线| 日本免费在线视频不卡一不卡二| 成人性生交大片免费看中文网站| 欧美日本一区二区在线观看| 国产精品亲子乱子伦xxxx裸| 蜜桃视频在线一区| 一本大道av一区二区在线播放| 精品国产精品一区二区夜夜嗨| 亚洲国产色一区| 97久久精品人人澡人人爽| 精品1区2区在线观看| 亚洲国产精品欧美一二99| 不卡一区二区中文字幕| 久久久精品日韩欧美| 久久精品国产99国产精品| 欧美日韩色一区| 亚洲免费观看高清完整版在线观看 | 中文字幕在线观看一区| 九九精品一区二区| 日韩一区二区三区三四区视频在线观看 | 国产福利精品导航| 日韩欧美的一区| 日韩福利视频网| 91福利在线看| 亚洲精品免费视频| 色婷婷久久久久swag精品| **网站欧美大片在线观看| 粉嫩av一区二区三区在线播放| 欧美videos中文字幕| 人妖欧美一区二区| 91精品国产麻豆| 天天av天天翘天天综合网色鬼国产| 日本韩国视频一区二区| 一区二区三区不卡在线观看| 91视频精品在这里| ㊣最新国产の精品bt伙计久久| 国产成人精品一区二区三区四区| 久久影视一区二区| 国产精品一区久久久久| 久久精品免视看| 风间由美性色一区二区三区| 欧美极品另类videosde| 成人精品鲁一区一区二区| 国产精品乱子久久久久| 91免费在线看| 亚洲综合图片区| 884aa四虎影成人精品一区| 日本成人中文字幕| 日韩亚洲欧美中文三级| 老司机免费视频一区二区三区| 日韩欧美国产一二三区| 久久se这里有精品| 久久久久久综合| www.色综合.com| 亚洲午夜激情av| 欧美精品三级日韩久久| 日韩精品视频网站| 欧美刺激脚交jootjob| 韩国成人在线视频| 国产精品天天看| 在线一区二区三区四区五区| 亚洲第一电影网| 久久综合九色综合欧美就去吻| 国产成人免费视频网站| 亚洲欧美视频在线观看| 欧美精品日日鲁夜夜添| 久久精品国产免费看久久精品| 久久亚区不卡日本| 99re在线精品| 欧美a级一区二区| 欧美国产一区二区在线观看| caoporen国产精品视频| 亚洲国产精品久久久男人的天堂| 日韩欧美在线1卡| 成人精品电影在线观看| 亚洲国产精品久久艾草纯爱| 精品欧美黑人一区二区三区| 成人免费黄色在线| 日韩欧美国产一区二区三区| 国产精品毛片无遮挡高清| 国产一区在线观看视频| 中文字幕视频一区| 欧美乱妇一区二区三区不卡视频 | 91国偷自产一区二区三区观看| 蜜臀精品久久久久久蜜臀| 国产精品黄色在线观看| 91精品欧美综合在线观看最新| 丁香网亚洲国际| 日韩精品一二区| 中文字幕中文字幕在线一区| 91精品国产91热久久久做人人| 国产91在线观看| 日韩 欧美一区二区三区| 亚洲欧洲成人av每日更新| 在线电影一区二区三区| 波多野结衣一区二区三区 | 正在播放亚洲一区| 国产a精品视频| 肉丝袜脚交视频一区二区| 中文一区一区三区高中清不卡| 欧美精品tushy高清| 色综合色综合色综合色综合色综合| 久久疯狂做爰流白浆xx| 亚洲成av人影院| 亚洲人成影院在线观看|