C/C++获取系统当前时间
C库中与系统时间相关的函数定义在<time.h>头文件中, C++定义在<ctime>头文件中。
一、time(time_t*)函数
函数定义如下:

time_t time (time_t* timer);

获取系统当前日历时间 UTC 1970-01-01 00:00:00开始的unix时间戳
参数:timer 存取结果的时间指针变量,类型为time_t,指针变量可以为null。如果timer指针非null,则time()函数返回值变量与timer指针一样,都指向同一个内存地址;否则如果timer指针为null,则time()函数返回一个time_t变量时间。
返回值,如果成功,获取当前系统日历时间,否则返回 -1。

二、结构体 struct tm

变量 类型 说明 范围
tm_sec int 每分钟的秒数 [0 - 61]
tm_min int 每小时后面的分钟数 [0 - 59]
tm_hour int 凌晨开始的小时数 [0 - 23]
tm_mday int 从每月份开始算的天数 [1 - 31]
tm_mon int 从一月份开始的月份数 [0 - 11]
tm_year int 从1900年开始的年数  
tm_wday int 从每周天开始算的天数 [0 - 6]
tm_yday int 一年的第几天,从零开始 [0 - 365]
tm_isdst int 夏令时  
       

这里有几个地方要注意:
1. tm_sec 在C89的范围是[0-61],在C99更正为[0-60]。通常范围是[0-59],只是某些系统会出现60秒的跳跃。
2. tm_mon 是从零开始的,所以一月份为0,十二月份为11。

三、本地时间转换函数localtime(time_t*)
函数原型
struct tm * localtime (const time_t * timer);
将日历时间转换为本地时间,从1970年起始的时间戳转换为1900年起始的时间数据结构

四、源码及编译
current_time.cpp

#include <cstdio>
#include <ctime>  int main(int argc, char* argv[]) {  time_t rawtime;  struct tm *ptminfo;  time(&rawtime);  ptminfo = localtime(&rawtime);  printf("current: %02d-%02d-%02d %02d:%02d:%02d\n",  ptminfo->tm_year + 1900, ptminfo->tm_mon + 1, ptminfo->tm_mday,  ptminfo->tm_hour, ptminfo->tm_min, ptminfo->tm_sec);  return 0;
}  编译及运行
$ g++ current_time.cpp
$ ./a.out
current: 2017-07-26 23:32:46

转载于:https://www.cnblogs.com/linux-wang/p/8142760.html

C/C++获取系统当前时间相关推荐

  1. c 获取当前时间插入oracle数据库,Oracle如何获取系统当前时间等操作实例,c++获取系统时间...

    Oracle如何获取系统当前时间等操作实例,c++获取系统时间 获取系统当前时间 date类型的 select sysdate from dual; char类型的 select to_char(sy ...

  2. oracle 取系统当前年份_Oracle如何获取系统当前时间等操作实例

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 获取系统当前时间 date类型的 ? 1 select sysdate from dual; char类型的 ? 123456 select to_cha ...

  3. sap获取系统时间_获取系统当前时间

    NSString *appKey() { // // 获取系统当前时间 // NSDate * date = [NSDate date]; // NSTimeInterval sec = [date ...

  4. java获取系统当前时间格式化_java 获取系统当前时间并格式化

    java 获取系统当前时间并格式化 CreateTime--2018年5月9日11:41:00 Author:Marydon 实现方式有三种 updateTime--2018年7月23日09点32分 ...

  5. android service 样例(电话录音和获取系统当前时间)

    关于android service 的具体解释请參考: android四大组件--android service具体解释.以下将用两个实例具体呈现Android Service的两种实现. 一个是st ...

  6. 获取系统当前日期时间

    今天学习了一个获取系统当前日期时间的方式. 代码如下: #include <iostream> #include <ctime> using namespace std; in ...

  7. C# 获取系统开机时间

    C# 获取系统开机时间 原文:C# 获取系统开机时间 ///         ///  获取系统开机时间          ///         ///         private DateTi ...

  8. js获取系统当前时间,实现钟表功能

    <body> <div id="show"></div> <script>     //获取系统当前时间,实现钟表功能     fu ...

  9. php中跟时间有关的处理(时区设置,计算时间差,获取系统当前时间)

    1.修改时区 背景 :保存到Navicat中的时间和本地系统时间相差8小时 原因:在app/config下的app.php中有一行 ['timezone' => 'UTC',} 规定的是时区默认 ...

最新文章

  1. html 中写样式,在html文档中如何定义内部样式表
  2. 消息 245,级别 16,状态 1,第 1 行 在将 varchar 值 '2,8' 转换成数据类型 int 时失败。...
  3. python怎么开发软件_怎么使用python进行软件开发
  4. jq cookie的使用
  5. 常见的大数据技术类型有哪些
  6. 各种级数(调和、几何)总结
  7. python输出保留两位小数怎么表示_python格式输出的实现方法保留2个小数位
  8. 【MODIS数据处理#11】例六:绘制NDVI多年变化趋势空间分布图
  9. php strict warning,PHP Warning: Unsupported declare 'strict_types' in ...
  10. asp.net WEB 调用 CuteFTP8.0 ftpte.exe 实现大文件上传
  11. task5b-验证lncRNA只有部分具有polyA尾结构
  12. C语言程序写99乘法表,如何用C语言编程序:九九乘法表
  13. linux中的帮助命令man,help
  14. 【ISO/IEC9126】ISO/IEC9126中软件质量模型品质介绍总结
  15. 程序员进阶攻略笔记01-10
  16. CF 71A [字符串统计]
  17. 如何才能让你的一天卓有成效
  18. SpringBoot是如何动起来的
  19. c++十六进制加法_C/C++知识点之怎样理解八进制和十六进制
  20. java正则表达式语法(java正整数正则表达式)

热门文章

  1. java反射机制和junit的使用
  2. python的垃圾处理机制_Python语法入门之垃圾回收机制
  3. 键盘鼠标录制哪个好用_好看好用还不贵的那种键盘鼠标真的有吗?这次还真让我碰到了...
  4. centos7点击桌面图标无反应_【问题帖】电脑不显示桌面图标和任务栏,只显示鼠标光标咋办?...
  5. cadence安装完怎么打开_Linux 环境下Vivado与Cadence仿真工具联合仿真环境的搭建
  6. 运维基础(5)Ansible
  7. 阿里云开源业内首个应用多活项目 AppActive,与社区共建云原生容灾标准
  8. 阿里云在应用扩缩容下遇到的挑战与选型思考
  9. KubeCon 北美前瞻|在 2020 最后,容器领域有哪些值得你关注的话题?
  10. Dubbo 3.0 - 开启下一代云原生微服务