2019独角兽企业重金招聘Python工程师标准>>>

涉及到的数据结构

  • time_t,该对象中存放的是距离 1970-01-01 00:00:00 +0000 (UTC) 所经过的秒数.

  • struct tm,该对象中存放的是具体的日期值,包括年,月,日,时,分,秒,等等.如下:

struct tm {int tm_sec; /* 秒数,[0,60],取 60 的原因是可能存在润秒的缘故 */int tm_min; /* 分钟,[0,59] */int tm_hour;/* 小时,[0,23] */int tm_mday;/* 日期数,[1,31] */int tm_mon;/* 距离一月的月数,[0,11],即当为0时,表明是 1 月. */ int tm_year;/* 距离 1900 所经过的年数,即当前实际年份为 tm_year+1900 */int tm_wday;/* 距离周日的天数,[0,6],即当为0时,表明是周日 */int tm_yday;/* 距离 1 月 1 号的天数,[0,365] */int tm_isdst;/* 是否是夏令时,若<0,表明该域信息不可用,若=0,表明没有采用夏令时,若>0,表明采用了夏令时 */
};

函数之间的关系

  • time(),从内核中取出当前时间,可以使用 gettimeofday() 获取更精确的时间.(参考 man 手册)

  • gmtime(),localtime(),将 time_t 类型的对象格式化为 struct tm 类型.(参考 man 手册)

  • mktime().将 struct tm 类型的对象格式化为 time_t 类型,该函数具体见下:

/*** 将 struct tm 类型格式化为 time_t 类型.* tm 作为输入/输出参数:* 在输入时,将忽略 tm_wday,tm_yday 域,并且若 tm_isdst<0,此时 mktime() 内部自己判断是否使用了夏令时,若 tm_isdst >0,表明采用了夏令时,否则未采用夏令时.* 在输出时,若 tm_sec,tm_min,...,tm_year 的值超出范围,则会规范化,如 10月40号会被规范为 11月9号;tm_wday,tm_yday 会重新计算.tm_isdst 会重新设置表明是否使用了夏令时.* 若 tm 包括的信息无法转化为 time_t 类型,则 tm 各域的值保持不变,并且返回 -1.*/
time_t mktime(struct tm *tm);

转载于:https://my.oschina.net/u/1383479/blog/339767

Unix时间相关的函数相关推荐

  1. 【Python 标准库学习】时间相关的函数库 — time

    欢迎加入 Python 官方文档翻译团队:https://www.transifex.com/python-doc/ time 模块提供了各种时间相关的函数,该模块中的大多数函数是调用了所在平台 C ...

  2. php 2038年,php实现兼容2038年后Unix时间戳转换函数,2038unix_PHP教程

    php实现兼容2038年后Unix时间戳转换函数,2038unix 使用方法跟旧的函数一模一样. 复制代码 代码如下: function fun_strtotime($var1=0,$var2=0){ ...

  3. php中的时间函数(如何设置时区有4种方法)------与时间相关的函数 (time、date、m‘ktime、microtime(true)、strtotime)

    1.如何设置时区:服务器默认的时间都是国家统一时间格林威治,所以在使用服务器前需要设置当前服务器的时区位于用于指定的时区. 设置时区: 1.找到php.ini文件,找到date.zonetime. ( ...

  4. UNIX再学习 -- 函数abort

    abort 函数之前有讲过的,参看:C语言再学习 -- 关键字return和exit ()函数 然后我们在讲 8 中进程终止时,也说过.参看:UNIX再学习 -- exit 和 wait 系列函数 下 ...

  5. UNIX再学习 -- 函数 system

    一.system 函数 #include <stdlib.h> int system(const char *command); 1.参数解析 command:shell 命令行字符串 2 ...

  6. UNIX再学习 -- 函数 fork 和 vfork

    一.进程标识 每个进程都有一个非负整数形式的唯一编号,即 PID.PID 在任何时刻都是唯一的,但是可以重用,当进程终止并被回收以后,其 PID 就可以为其它进程所用.进程的 PID 由系统内核根据延 ...

  7. mysql 日期_「13」MySQL中与日期与时间相关的函数

    下面这张图片,是我们每个人拿起手机就应该看到的,这就是日期与时间! MySQL中如何通过各种函数来实现日期与时间的处理?这就是本文所要探索的问题! [1]获取当前日期的函数 [结论]返回值是以&quo ...

  8. UNIX文件操作函数open、create、close、lseek简介

    目录 一.文件描述符 二.文件控制头文件  fcntl.h 2.1 打开文件函数 2.2 创建文件函数 三.符号常量头文件unistd.h 3.1 关闭文件函数 3.2 确定文件偏移量函数 一.文件描 ...

  9. Unix域socketpair函数使用

    socketpair函数用于创建两个已经连接好的Unix域的socket,仅用于Unix域通讯,这两个socket对应的sockaddr_un.sun_path是空的,可用于同一个进程或父子进程之间的 ...

最新文章

  1. 如何用计算机声卡,外置声卡怎么连接电脑
  2. 你还记得当初为什么进入IT行业吗?
  3. mysql基础(九) 索引和视图
  4. 记录前端浏览器常见错误SyntaxErro或GET http://xxx/xxx (Not Found)等
  5. 20个jQuery 图片及多媒体画廊插件
  6. C# 数据适配器之 DataAdapter 对象
  7. oracle中右表有过滤条件的left outer join
  8. JSON.parse()、eval()、JSON.stringify()、jQuery.parseJSON()的用法
  9. android 仿快递步骤_Android开发-类似物流快递进度效果
  10. 什么是预热 压测_全链路压测探索实践之路
  11. 安装过mysql和p_MAC下安装与配置MySQL
  12. 手机所有录音功能失效_疯狂打CALL!小米手机自带扫描文字功能,一秒识别所有文字信息!...
  13. 用户名_网络安全与防御-OpenSSH用户名枚举及其检测方法
  14. 2018年大学生设计竞赛浙江赛区C题-无线充电电动小车-试题分析
  15. Windows Server 2022 英文版、简体中文版下载 (updated Dec 2021)(2022 年 1 月发布)
  16. SQL2008 视频教程 SQL Server 2008高级视频教程
  17. 论文阅读 Graph-Based Global Reasoning Networks
  18. 961 计算机学科专业基础综合,2018年北京航空航天大学961计算机学科专业基础综合考研复习资料...
  19. 口腔菌群想要突破?这一方法潜力无限
  20. Cannot create an instance of class AndroidViewModel (androidx ViewModelProvider AndroidViewModel)

热门文章

  1. VTK:Render之RenderView
  2. VTK:网格之ExtractEdges
  3. C++Jump Search跳转搜索的实现算法(附完整源码)
  4. c++fibonacci search斐波那契搜索的实现算法(附完整源码)
  5. C语言实现组织图kohone/topology算法(附完整源码)
  6. C++const的作用与使用
  7. QT的QGraphicsItem类的使用
  8. vba搜索java里面的sql_在EXCEL中使用SQL语句查询集锦-持续更新中,敬请关注
  9. kylin调优,项目中错误总结,知识点总结,kylin jdbc driver + 数据库连接池druid + Mybatis项目中的整合,shell脚本执行kylin restapi 案例
  10. 1CCTableView的使用,TableView响应和小格子tableView实现