首页 > 代码库 > localtime和gmtime
localtime和gmtime
// 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;}
完。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。