time_t 精确到秒,timeval 精确到微秒,都是以长整数来保存时间
timeval中包含time_t对象:
tv.tv_sec
毫秒(ms): tv.tv_usec/1000

结构体:

time_t 类型,这本质上是一个长整数,表示从1970-01-01 00:00:00到目前计时时间的秒数,如果需要更精确一点的,可以使用timeval精确到毫秒。struct timeval {  time_t       tv_sec;     /* seconds */  suseconds_t   tv_usec; /* microseconds */
};
struct tm {  int tm_sec;     /* seconds after the minute - [0,59] */  int tm_min;     /* minutes after the hour - [0,59] */  int tm_hour;    /* hours since midnight - [0,23] */  int tm_mday;    /* day of the month - [1,31] */  int tm_mon;     /* months since January - [0,11] */  int tm_year;    /* years since 1900 */  int tm_wday;    /* days since Sunday - [0,6] */  int tm_yday;    /* days since January 1 - [0,365] */  int tm_isdst;   /* daylight savings time flag */  };

常用时间函数

time_t time(time_t *t); //取得从1970年1月1日至今的秒数
char *asctime(const struct tm *tm); //将结构中的信息转换为真实世界的时间,以字符串的形式显示 // Www Mmm dd hh:mm:ss yyyy 其中,Www 表示星期几,Mmm 是以字母表示的月份,dd 表示一月中的第几天,hh:mm:ss 表示时间,yyyy 表示年份。
char *ctime(const time_t *timep); //将timep转换为真实世界的时间,以字符串显示,它和asctime不同就在于传入的参数形式不一样 //  Mon Jan 11 08:23:14 2021
struct tm *gmtime(const time_t *timep); //将time_t表示的时间转换为没有经过时区转换的UTC时间,是一个struct tm结构指针
struct tm *localtime(const time_t *timep); //和gmtime类似,但是它是经过时区转换的时间。
struct tm *localtime_r(const time_t *timep, struct tm *result); //线程安全的
time_t mktime(struct tm *tm); //将struct tm 结构的时间转换为从1970年至今的秒数
int gettimeofday(struct timeval *tv, struct timezone *tz); //返回当前距离1970年的秒数和微妙数,后面的tz是时区,一般不用
double difftime(time_t time1, time_t time2); //返回两个时间相差的秒数
asctime_r(), ctime_r(), gmtime_r() // 时间函数的 _r 版本都是线程安全的。
size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr); //时间转字符串
char *strptime(const char *str, const char *format, struct tm *timeptr); //字符串转时间

time_t tm timeval 的区别相关推荐

  1. C++中实现 time_t, tm 相互转换

    time_t -> tm: localtime tm -> time_t: mktime time_t curTime;time(&curTime);dwCurTime = cur ...

  2. TEM TE TM模的区别和电磁波模式

    TEM TE TM模的区别: 在自由空间传播的均匀平面电磁波(空间中没有自由电荷,没有传导电流),电场和磁场都没有和波传播方向平行的分量,都和传播方向垂直.此时,电矢量E,磁矢量H和传播方向k两两垂直 ...

  3. C++ 关于日期时间(四)asctime/ctime/gmtime/time_t/tm

    time_t 用来存储从1970年到现在经过了多少秒,要想更精确一点,可以用结构struct timeval,它精确到微秒. tm结构 在time.h中的定义如下: struct tm {int tm ...

  4. time time_t tm用法

    最近搞视频检索,涉及到很多时间的计算.顺便记录下一些基本用法. 一.gmtime用法 #include <stdio.h> #include <stdlib.h> #inclu ...

  5. time_t tm systemtime 互相转换

    为什么80%的码农都做不了架构师?>>>    头文件:time.h 函数原型:time_t time(time_t * timer) 功 能: 获取当前的系统时间,返回的结果是一个 ...

  6. C程序中对时间的处理——time库函数详解转

    包含文件:<sys/time.h> <time.h> 一.在C语言中有time_t, tm, timeval等几种类型的时间 1.time_t time_t实际上是长整数类型, ...

  7. (笔记)处理日期和时间的方法(chrono 库,time_t等)

    文章目录 0 摘要 1 chrono 库 1.1 时间间隔duration 1.2 时间点time point 1.3 时钟clocks 1.3.1 system_clock 1.3.2 steady ...

  8. FILETIME, SYSTEMTIME and time_t

    先说个概念:  Coordinated Universal Time(UTC):又称为世界标准时间: 比如,中国内地的时间与UTC的时差为+8,也就是UTC+8.  Calendar Time:日历时 ...

  9. c语言time_t转oletime,CTime、COleDateTime和CString之间的相互转化 | 求索阁

    CString--->COleDateTime: 方法1:COleDateTime::ParseDateTime() CString strDate = _T("1987-06-21& ...

最新文章

  1. 微信、移动端css布局的那些坑
  2. Yii 框架调试之CWebLogRoute
  3. python a any_Python any() 函数
  4. 响应时登录html,HtmlUnit:单击不响应时登录HtmlElement
  5. 小学生四则运算出题程序 无操作界面java版 简单的运用java中一些基本操作
  6. 【机器学习】漫谈特征缩放
  7. 统计文章中字母出现频率
  8. 经典并发问题:生产者-消费者
  9. Ubuntu下备份系统的方法
  10. 太原科技大学计算机宿舍,太原科技大学宿舍怎么样
  11. webstorm中文乱码问题
  12. U盘多次格式化或作为系统盘格式化后造成的容量变小解决办法
  13. php判断floor,php floor()函数
  14. 精彩回顾 | Dev.Together 2022 开发者生态峰会圆满落幕
  15. [FineReport帆软]决策报表frm中实现添加监控声音报警
  16. 传统 以太网 时隙(slot time) 理解
  17. 窗口SendMessage参数详解
  18. 博途PLC 1200/1500PLC MODBUS-RTU通讯优化(状态机编程)
  19. 暴雪战网安全令的原理
  20. 测试相关理解(三)—边界值分析方法

热门文章

  1. java内部类是干什么的_Java内部类有什么作用
  2. 广州为什么难开海底捞?
  3. 详解FIR滤波器和IIR滤波器的区别
  4. 弘辽科技:看了这些,你就知道为什么你的淘宝店铺做不起来
  5. 瘦客户端+服务器桌面部署
  6. Go IDE vscode (by quqi99)
  7. 下定决心,准备买dopod535,做基于M$ smartphone 2003(ce.net 4.2)的开发了
  8. delphi mysql 图片_如何读取delphi数据库中的图片
  9. 3645. 莫干山奇遇
  10. IP地址发生冲突的快速处理方法!