码迷,mamicode.com
首页 > 其他好文 > 详细

localtime和gmtime

时间:2014-07-11 21:53:38      阅读:304      评论:0      收藏:0      [点我收藏+]

标签:style   blog   http   color   使用   数据   

// temp10.cpp : 定义控制台应用程序的入口点。
//

#include "stdafx.h"
#include <Windows.h>
#include <stdio.h>
#include <time.h>

int _tmain(int argc, _TCHAR* argv[])
{
    //宇宙标准时间是格林威治时间。
    //为了适应地球上的个个地方人们的生活作息,人们发明了本地时间。
    //本地时间,是基于格林威治时间并根据太阳升落修正后的时间。即我们日常生活中所使用到的时间。

    //tm和time_t是两种表示时间的格式。表示的是从1900年1月1日0时0分0秒到现在的秒数。
    //无论用格林威治时间计算,还是用当地时间计算,时间差秒数都是相同的。
    struct tm deviceTime;
    ZeroMemory(&deviceTime, sizeof(struct tm));
    deviceTime.tm_year=2014-1900;
    deviceTime.tm_mon=1-1;
    deviceTime.tm_mday=1;
    deviceTime.tm_hour=8;
    deviceTime.tm_min=0;
    deviceTime.tm_sec=0;
    time_t ti=mktime(&deviceTime);

    //localtime把tim_t的形式转换为tm的形式。
    //此函数只有一个参数,此参数表示的是:从本地时间的1900年1月1日0时0分0秒到本地时间的现在的秒数。
    //返回值,表示本地时间秒数的年月日时分秒的格式数据。即localtime内部不会理会当前计算机上设置的时区。
    struct tm* newtime=localtime(&ti);
    printf("%04d-%d-%02d %02d:%02d:%02d\n",
        newtime->tm_year+1900, newtime->tm_mon+1, newtime->tm_mday, newtime->tm_hour, newtime->tm_min, newtime->tm_sec);

    //gmtime,同localtime一样,也把tim_t的形式转换为tm的形式。
    //此函数也只有一个参数,此参数表示的是:从本地时间的1900年1月1日0时0分0秒到本地时间的现在的秒数。
    //返回值,表示的是格林威治时间。即是:根据程序所在的计算机上设置的本地时区,把参数传入的本地时间,转变为格林威治时间。
    //例如,本地时间为2014-7-9 08:00:00 转变为格林威治时间(宇宙标准时间)为2014-7-9 00:00:00。
    newtime=gmtime(&ti);
    printf("%04d-%d-%02d %02d:%02d:%02d\n",
        newtime->tm_year+1900, newtime->tm_mon+1, newtime->tm_mday, newtime->tm_hour, newtime->tm_min, newtime->tm_sec);

    getchar();
    return 0;
}

bubuko.com,布布扣

 

完。

 

localtime和gmtime,布布扣,bubuko.com

localtime和gmtime

标签:style   blog   http   color   使用   数据   

原文地址:http://www.cnblogs.com/liyou-blog/p/3833239.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!