C语言时间函数解析

对于c的时间函数,又能知道多少呢?


ftime()         获取当前时间,并将其保存在结构体timeb中
localtime()     将time_t转换成结构体tm


#include <stdio.h>
#include <time.h>
#include <sys/timeb.h>

int main()
{
    struct timeb tp;
    struct tm    *tm;

    ftime(&tp);
    tm = localtime(&( tp.time ));

    printf("%02d:%02d:%02d:%03d/n",
            (tm->tm_hour),
            (tm->tm_min),
            (tm->tm_sec),
            (tp.millitm ));

timeb
--------------------------------------------
struct timeb{
    time_t           time;
    unsigned short millitm;
    short            timezonel;
    short            dstflag;
};

timeb.time    
    为1970-01-01至今的秒数
timeb.millitm
    微秒
timeb.timezonel
    为目前时区和Greenwich相差的时间,单位为分钟
timeb.dstflag
    为日光节约时间的修正状态,如果为非0代表启用日光节约时间修正

ftime()
--------------------------------------------
int ftime(struct timeb *tp);
    Return current date and time in tp
    返回值 :无论成功或失败都返回0

tm
--------------------------------------------
Broken-down time is stored in the structure tm which is defined in <time.h> as follows:
struct tm {
     int tm_sec;    
     int tm_min;    
     int tm_hour;    
     int tm_mday;
     int tm_mon;
     int tm_year;    
     int tm_wday;    
     int tm_yday;    
     int tm_isdst;    
};
tm_sec
    秒 –- 取值区间为[0,59]
tm_min
    分 -- 取值区间为[0,59]
tm_hour
    时 -- 取值区间为[0,23]
tm_mday
    日 -- 取值区间为[1,31]
tm_mon
    月 -- 取值区间为[0,11] (0代表一月)
tm_year
    年 -- 其值为实际年份减去1900
tm_wday
    星期 –- 取值区间为[0,6] (其中0代表星期天; 1代表星期一)
tm_yday
    从每年的1月1日开始的天数 – 取值区间为[0,365],其中0代表1月1日,1代表1月2日
tm_isdst
    夏令时标识符,实行夏令时的时候,tm_isdst为正。不实行夏令时的进候,tm_isdst为0;不了解情况时,tm_isdst()为负。


localtime()
--------------------------------------------
    asctime, ctime, gmtime, localtime, mktime, asctime_r, ctime_r, gmtime_r, localtime_r ---- transform date and time to broken-down time or ASCII

struct tm *localtime(const time_t *timep);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值