| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 636 人关注过本帖
标题:MONTH(),DAY()等函数的头文件是什么?
只看楼主 加入收藏
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
结帖率:100%
收藏
已结贴  问题点数:20 回复次数:2 
MONTH(),DAY()等函数的头文件是什么?
我知道某个时间对已知时间点(比如2015.1.1)的时间差(单位秒),怎么求这个时间点的日期?
搜索更多相关主题的帖子: 时间差 
2016-08-02 12:10
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:528
帖 子:9031
专家分:54061
注 册:2011-1-18
收藏
得分:20 
“MONTH(),DAY()等函数” --- C/C++ 中没有这些函数

程序代码:
#include <time.h>
#include <stdio.h>

void foo( int year, int mon, int day
        , int hour, int min, int sec
        , int delta_sec )
{
    struct tm tm1 = { sec,min,hour, day,mon-1,year-1900, 0,0,0 };
    time_t t1 = mktime( &tm1 );
    if( t1 == time_t(-1) )
    {
        puts( "[ERROR] ……" );
        return;
    }

    time_t t2 = t1 + delta_sec;
    struct tm* tm2 = localtime( &t2 );
    if( !tm2 )
    {
        puts( "[ERROR] ……" );
        return;
    }

    printf( "%04d-%02d-%02d %02d:%02d:%02d\n"
        , tm2->tm_year+1900, tm2->tm_mon+1, tm2->tm_mday
        , tm2->tm_hour, tm2->tm_min, tm2->tm_sec );
}

int main( void )
{
    printf( "%s", "2015-01-01 00:00:00的后3600秒 是 " );
    foo( 2015, 1, 1, 0, 0, 0, +3600 );

    printf( "%s", "2015-01-01 00:00:00的前3600秒 是 " );
    foo( 2015, 1, 1, 0, 0, 0, -3600 );

    return 0;
}

2016-08-02 12:48
ehszt
Rank: 12Rank: 12Rank: 12
等 级:贵宾
威 望:40
帖 子:1745
专家分:3216
注 册:2015-12-2
收藏
得分:0 
谢谢!
2016-08-02 13:34
快速回复:MONTH(),DAY()等函数的头文件是什么?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.066938 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved