问题由来

时间戳转换(时间戳:自 1970 年1月1日(00:00:00 )至当前时间的总秒数。)

#include <stdio.h>
#include <time.h> int main(int argc, const char * argv[])
{
time_t t;
struct tm *p;
t=;
p=gmtime(&t);
char s[];
strftime(s, , "%Y-%m-%d %H:%M:%S", p);
printf("%d: %s\n", (int)t, s);
}

结果

1408413451      2014-08-19 01:57:1408384651

可是利用命令在linux终端计算的结果不一

[###t]$ date -d @1408413451
Tue Aug 19 09:57:31 CST 2014

通过比较发现,两者正好差8个小时,CST表示格林尼治时间,通过strftime()函数可以输出时区,改正如下

#include <stdio.h>
#include <time.h> int main(int argc, const char * argv[])
{
time_t t;
struct tm *p;
t=;
p=gmtime(&t);
char s[];
strftime(s, , "%Y-%m-%d %H:%M:%S::%Z", p);
printf("%d: %s\n", (int)t, s);
}

结果

1408413451: 2014-08-19 01:57:31::GMT

深究

GMT(Greenwich Mean Time)代表格林尼治标准时间。十七世纪,格林威治皇家天文台为了海上霸权的扩张计画而进行天体观测。1675年旧皇家观测所正式成立,通过格林威治的子午线作为划分地球东西两半球的经度零度。观测所门口墙上有一个标志24小时的时钟,显示当下的时间,对全球而言,这里所设定的时间是世界时间参考点,全球都以格林威治的时间作为标准来设定时间,这就是我们耳熟能详的「格林威治标准时间」(Greenwich Mean Time,简称G.M.T.)的由来。

CST却同时可以代表如下 4 个不同的时区:

Central Standard Time (USA) UT-6:00
Central Standard Time (Australia) UT+9:30
China Standard Time UT+8:00
Cuba Standard Time UT-4:00

可见,CST可以同时表示美国,澳大利亚,中国,古巴四个国家的标准时间。

好了两者差8个小时(CST比GMT晚/大8个小时),GMT+8*3600=CST,代码如下

#include <stdio.h>
#include <time.h> int main(int argc, const char * argv[])
{
time_t t;
struct tm *p;
t=;
p=gmtime(&t);
char s[];
strftime(s, , "%Y-%m-%d %H:%M:%S::%Z", p);
printf("%d: %s\n", (int)t, s); t= + ;
p=gmtime(&t);
strftime(s, , "%Y-%m-%d %H:%M:%S", p);
printf("%d: %s\n", (int)t, s);
return ;
}

结果

1408413451: 2014-08-19 01:57:31::GMT
1408442251: 2014-08-19 09:57:31

linux平台

Tue Aug 19 09:57:31 CST 2014

  

C++时间戳转化(涉及GMT CST时区转化)的更多相关文章

  1. 【转贴】一次 JDBC 与 MySQL 因 “CST” 时区协商误解导致时间差了 14 或 13 小时的排错经历

    原文:https://juejin.im/post/5902e087da2f60005df05c3d ------------------------------------------------- ...

  2. iOS开发时间戳与时间NSDate,时区的转换,汉字与UTF8,16进制的转换

    http://blog.sina.com.cn/s/blog_68661bd80101njdo.html 标签: ios时间戳 ios开发时间戳 ios16进制转中文 ios开发utf8转中文 ios ...

  3. 深入理解windows系统内的GMT和时区

    http://www.itshanghai.net/technology/wdzl_windowsxp/   UTC(Universal Time Coordinated)是通用协调时,这两者几乎是一 ...

  4. 与 MySQL 因“CST” 时区协商误解导致时间差了13 小时

    CST 时区名为 CST 的时区是一个很混乱的时区,有四种含义: 美国中部时间 Central Standard Time (USA) UTC-05:00 / UTC-06:00 澳大利亚中部时间 C ...

  5. linux系统修改CST时区

    ================================================= [root@tzyyserveryg ~]# date -R Fri, 28 Nov 2014 08 ...

  6. CST时区,MYSQL与JAVA-WEB服务器时间相差13个小时的问题

    最近倒腾了一台阿里云主机,打算在上面装点自己的应用.使用docker安装了安装mysql后,发现数据库的存储的时间与java-web应用的时间差8个小时,初步怀疑是docker容器时区的问题.经过一系 ...

  7. java时区转化相关工具方法

    import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import java. ...

  8. Python 时间推进器-->在当前时间的基础上推前n天 | CST时间转化标准日期格式

    由于公司任务紧迫,好久没有在园子里写自己的心得了,今天偷个闲发表点简单的代码块,在开源的时代贡献微薄力量.话不多说,直接上代码块: ]) m = ]) d = ]) the_date = dateti ...

  9. 用JS将指定时间转化成用户当地时区的时间

    公司的项目是面向海外用户的,但是最初的设计没考虑到时差问题,存入数据库的时间都是东八区的时间,导致现在补救有点坑爹...... 有一个需求是,产品详细页需要注明此款产品的开售时间,当海外的用户来访问这 ...

随机推荐

  1. Liferay IDE3.1 M1的一些新功能

    定于11月发布的Liferay IDE提供了一些让人期许的功能 1. code upgrade tools 这个工具将会帮助你把liferay 6.2的项目升级为7.0的项目.下面列举其主要功能 1. ...

  2. unity3d中的Viewport

    Camera属性中有个Viewport Rect,如下图: X.Y为(0, 0)代表左下角,(1, 1)代表右上角:W和H分别是Viewport的宽(Width)和高(Height),摄像机的Aspe ...

  3. Careercup - Google面试题 - 6253551042953216

    2014-05-06 01:49 题目链接 原题: Modify the following code to add a row number for each line is printed pub ...

  4. android 开发 system/app目录下面有多个重复包名的apk,会不会冲突

    环境:已经拥有了root权限的android系统,我们的apk是开机启动 测试:将2个相同的版本拷贝到系统system/app目录下面 adb root #获取root权限,前提是已经开放了root权 ...

  5. hdu 4000 Fruit Ninja 树状数组

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4000 Recently, dobby is addicted in the Fruit Ninja. ...

  6. hdu 1285 确定比赛名次 拓扑排序

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1285 有N个比赛队(1<=N<=500),编号依次为1,2,3,....,N进行比赛,比赛 ...

  7. 了解javascript中的事件(二)

    本文目录如下: 零.寒暄 一.事件的分类 二.事件代理 2.1 问题引出 2.2 什么是事件代理 2.3 完整示例 二.事件代理 三.事件代理思想的用处 四.总结 零.寒暄 这篇博客本该出现在两个月以 ...

  8. [工作记录] Android OpenSL ES: references & AAC related

    AAC V.S. MP3 http://en.wikipedia.org/wiki/Advanced_Audio_Coding#AAC.27s_improvements_over_MP3 AAC pa ...

  9. web之困:现代web应用安全指南

    <web之困:现代web应用安全指南>在web安全领域有“圣经”的美誉,在世界范围内被安全工作者和web从业人员广为称道,由来自google chrome浏览器团队的世界顶级黑客.国际一流 ...

  10. POJ 2021

    #include <iostream> #include <string> #include <algorithm> #define MAXN 105 using ...