C库函数使用与小结之时间函数

C库函数使用与总结之时间函数

 

1. localtime(取得当地目前时间和日期)

【头文件】#include <time.h>

【函数原型】struct tm *localtime(const time_t * timep); 

【函数说明】localtime()将参数 timep 所指的 time_t 结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构 tm 返回。结构tm的定义请参考 gmtime()。此函数返回的时间日期已经转换成当地时区。

【返回值】返回结构 tm代表目前的当地时间

【补充说明】函数返回值是一个指针,实际的内存是localtime内部通过static申请的静态内存,所以通过localtime调用后的返回值不及时使用的话,很有可能被其他线程localtime调用所覆盖掉。其他的时间函数,如asctime,asctime_r;ctime,ctime_r;gmtime,gmtime_r都是类似的,所以,时间函数的 _r 版本都是线程安全的。

 

2. mktime(将时间结构数据转换成经过的秒数)

【头文件】#include <time.h>

【函数原型】time_t mktime(strcut tm * timeptr); 

【函数说明】mktime()用来将参数timeptr所指的tm结构数据转换成从公元1970年1 月1 日0 时0 分0 秒算起至今的 UTC 时间所经过的秒数。

【返回值】返回经过的秒数

 

3. difftime(求两次系统时间差)

【头文件】#include <time.h>

【函数原型】double difftime(time_t timer1, time_t timer0);

【函数说明】计算两个时刻之间的时间差

【返回值】返回两个time_t型变量之间的时间间隔