首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

C 时间转换有关问题

2013-04-21 
C 时间转换问题UTC时间 用数字表示 1365593408对应的日期是:2013-04-10 19:30:08//这个是vs2008代码CTime

C 时间转换问题
UTC时间 用数字表示 1365593408对应的日期是:2013-04-10 19:30:08

//这个是vs2008代码
CTime t(1365593408);
CString str=t.Format(L"%Y-%m-%d %H:%M:%S");
str为 2013-04-10 19:30:08

这样的日期
通过下面的方式转换为utc数字时间,与实际的1365593408多了16个小时。

    struct tm _tm;
    struct tm *tm_now;   
    time_t timep; 
    _tm.tm_year = 2013-1900;
    _tm.tm_mon  = 4-1;
    _tm.tm_mday = 10;
    _tm.tm_hour = 19; 
    _tm.tm_min  = 30;
    _tm.tm_sec  = 8;  
    timep = mktime(&_tm);
    tm_now=gmtime(&timep);
    printf("%ld\n"timep);//1365589808

mktime
[解决办法]
引用:
引用:UTC时间 用数字表示 1365593408对应的日期是:2013-04-10 19:30:08
C/C++ code?1234//这个是vs2008代码    CTime t(1365593408);    CString str=t.Format(L"%Y-%m-%d %H:%M:%S");str为 2013-04-10 19:30:……


windows下的与linux下的时间机制应该不是一样的。。
[解决办法]
引用:
引用:引用:引用:UTC时间 用数字表示 1365593408对应的日期是:2013-04-10 19:30:08
C/C++ code?1234//这个是vs2008代码    CTime t(1365593408);    CString str=t.Format(L"%Y……
#include <stdio.h>
#include <time.h>
int main(int argc, char **argv)
{
struct tm _tm;
struct tm *tm_now;
    _tm.tm_year = 2013-1900;
    _tm.tm_mon  = 4-1;
    _tm.tm_mday = 10;
    _tm.tm_hour = 19; 
    _tm.tm_min  = 30;
    _tm.tm_sec  = 8;  
    time_t timep = mktime(&_tm);
    tm_now=localtime(&timep);
    printf("%ld\n", timep);
return 0;
}

[解决办法]
引用:
引用:引用:引用:引用:引用:UTC时间 用数字表示 1365593408对应的日期是:2013-04-10 19:30:08
C/C++ code?1234//这个是vs2008代码    CTime t(1365……


你那个应该是格林威志时间吧!!!

热点排行