时间库函数简要汇总
来源:互联网 发布:人工智能能代替老师吗 编辑:程序博客网 时间:2024/05/18 01:27
#include <sys/time.h>
#include <time.h> /*1秒 = 1000毫秒 = 1000000 微秒 = 1000000000 纳秒*/
struct timeval
{
long tv_sec; // 秒
long tv_usec; // 微妙
};
用法: int gettimeofday(struct timeval *tv, struct timezone *tz);
常用方式: gettimeofday(&tv, NULL);
struct timespec
{
__time_t tv_sec; /*seconds 秒*/
long int tv_nsec; /*nanoseconds 纳秒*/
};
用法:int clock_gettime(clockid_t clk_id, struct timespect *tp);
CLOCK_REALTIME: Systemwide realtime clock. 系统范围内的实时时钟。
CLOCK_MONOTONIC:Represents monotonic time. Cannot be set. 表示单调时间,不能被设置的。CLOCK_MONOTONIC这种时钟更加稳定,不受系统时钟的影响。
常用方式:clock_gettime(CLOCK_MONOTONIC, &ts);
-----------------------------------------------------------------------------------------------------------------------------------------------------
#include <time.h>
time_t /*其实就是long型*/
函数名:time
用法:time_t time(time_t * timer)
功能: 获取当前的系统时间,返回的结果是一个time_t类型,其实就是一个大整数,
其值表示从CUT(Coordinated Universal Time)时间1970年1月1日00:00:00(称为UNIX系统的Epoch时间)到当前时刻的秒数。
然后调用localtime将time_t所表示的CUT时间转换为本地时间(我们是+8区,比CUT多8个小时)并转成struct tm类型,该类型的各数据成员分别表示年月日时分秒。
struct tm
{
int tm_sec; /* 秒–取值区间为[0,59] */
int tm_min; /* 分 - 取值区间为[0,59] */
int tm_hour; /* 时 - 取值区间为[0,23] */
int tm_mday; /* 一个月中的日期 - 取值区间为[1,31] */
int tm_mon; /* 月份(从一月开始,0代表一月) - 取值区间为[0,11] */
int tm_year; /* 年份,其值从1900开始 */
int tm_wday; /* 星期–取值区间为[0,6],其中0代表星期天,1代表星期一,以此类推 */
int tm_yday; /* 从每年的1月1日开始的天数–取值区间为[0,365],其中0代表1月1日,1代表1月2日,以此类推 */
int tm_isdst; /* 夏令时标识符*/
long int tm_gmtoff; /*指定了日期变更线东面时区中UTC东部时区正秒数或UTC西部时区的负秒数*/
const char *tm_zone; /*当前时区的名字(与环境变量TZ有关)*/
};
-----------------------------------------------------------------------------------------------------------------------------------------------------
函数名: localtime
功 能: 把从1970-1-1零点零分到当前时间系统所偏移的秒数时间转换为日历时间 。
说明:此函数获得的tm结构体的时间,是已经进行过时区转化为本地时间。
用 法: struct tm *localtime(const time_t *clock);
返回值:返回指向tm 结构体的指针.tm结构体是time.h中定义的用于分别存储时间的各个量(年月日等)的结构体.
函数名:gmtime
功能:把日期和时间转换为格林威治(GMT)时间的函数。将参数timep 所指的time_t 结构中的信息转换成真实世界所使用的时间日期表示方法,然后将结果由结构tm返回。
用法: struct tm *gmtime(const time_t *clock);
localtime和gmtime的 区别是:localtime函数获得的tm结构体的时间,是已经进行过时区转化为本地时间,gmtime获取当前系统时间,只是获取的时间未经过时区转换。
-----------------------------------------------------------------------------------------------------------------------------------------------------
函数名: asctime
功 能: 转换日期和时间为相应的ASCII码,返回字符串格式:星期,月,日,小时,分,秒,年
用 法: char *asctime(const struct tm *tblock);
函数名: ctime
功 能: 把日期和时间转换为字符串
用 法: char *ctime(const time_t *time);
-----------------------------------------------------------------------------------------------------------------------
函数使用步骤:
1. 调用【time(NULL)】获取time_t类型数值
2. 调用【localtime 或 gmtime】将time_t类型转换为struct tm类型。
3. 调用 【asctime 或 ctime】将struct tm类型转换成形如:星期,月,日,小时,分,秒,年
- 时间库函数简要汇总
- C++库函数sort简要示例
- C中的库函数汇总
- [OpenGL]OpenGL库函数汇总
- OpenGL 库函数汇总
- struts功能简要汇总
- Windows Sockets 2扩展库函数简要参考
- Windows Sockets 2扩展库函数简要参考
- 标准库函数计算时间
- lua中常用库函数汇总
- java集合类简要汇总
- 【库函数】简要举例STM32对GPIO进行SetBits和ResetBits
- 【算法入门经典】 重要库函数汇总
- cygwin +hadoop配置问题简要汇总
- velocity模板的语法简要汇总
- encodeURIComponent 和 encodeURI 和 escape 简要汇总
- c库函数之时间和日期处理
- Java日期时间处理的简要使用方法
- shell入门
- 关于netstat命令的用法--windows环境下
- .NET远程调用:MarshalByRefObject和Serializable的性能测试
- libSVM介绍
- Lucene——八种搜索
- 时间库函数简要汇总
- 黑马程序员-单例设计模式
- Linux用户和权限
- 极大似然估计
- UNIX TCP回射服务器/客户端(2):多进程服务器
- 信号测试_注册信号处理函数
- 马氏链及平稳过程要点
- uml信手拈来
- VS2010新建Web网站与新建Web应用程序的区别