C++继承了C语言用于日期和时间操作的结构和函数,使用之前程序要引用<ctime>头文件

有四个与时间相关的类型:clock_t、time_t、size_t、和tm。类型clock_t、size_t、和time_t能够把系统时间和日期表示为某种整数。

结构体tm把时间和日期以C结构的形式保存,tm结构的定义如下:

struct tm
{int tm_sec; //秒,正常范围0 ~59,但是允许到61int tm_min; //分 范围 0~59int tm_hour; //小时 0~23int tm_mday;    //一月中的第几天int tm_mon;    //月 0~11int tm_year;    //自1900年起的年数int tm_wday;    //一周中的第几天int tm_yday;    //一年中的第几天int tm_isdst; //夏令时
}

相关函数:

函数

描述

time_t time(time_t *time);

该函数返回系统的当前日历时间。自1970年1月1日以来经过的秒数,如果系统没有时间,返回-1

char *ctime(const time_t *time);

该函数返回一个表示当地时间的字符串指针,字符串形式day month year hours:minutes:seconds year\n\0

struct tm *localtime(const time_t *time);

该函数返回一个指向表示本地时间的tm结构的指针。

clock_t clock(void);

该函数返回程序执行起,处理器时间所使用的时间,如果时间不可用,则返回-1

char *asctime(const struct tm *time);

该函数返回一个指向字符串的指针,字符串包含了time所指向结构中存储的信息,返回的形式为:day month year hours:minutes:seconds year\n\0

struct tm *gmtime(const time_t *time);

该函数返回一个指向time的指针,time为tm结构,用协调世界时(UTC)也被称为格林尼治标准时间(GMT)表示

time_t mktime(struct tm *time);

该函数返回日历时间,相当于time所指向结构中存储的时间

double difftime(time_t time2,time_t time1);

该函数返回time1和time2之间相差的秒数

size_t strftime();

该函数可用于格式化日期和时间为指定的格式

实例:

#include<iostream>
#include<ctime>
using namespace std;int main()
{//基于当前系统日期和时间 初始化0time_t now = time(0);/把now转换成字符串形式char *dt = ctime(&now);cout << "local date and time:  " << dt << endl;//把now转化成tm结构tm *gmtm = gmtime(&now);dt = asctime(gmtm);cout << "UTC date and time :  " << dt << endl;return 0;
}

运行结果:

exbot@ubuntu:~/wangqinghe/C++/time$ ./time

local date and time:  Mon Aug  5 14:54:25 2019

UTC date and time :  Mon Aug  5 06:54:25 2019

使用结构体tm格式化时间

#include<iostream>
#include<ctime>
using namespace std;int main()
{time_t now = time(0);cout << "from 1970  then the seconds passed : " << now << endl;tm* ltm = localtime(&now);cout << "year : " << 1900 + ltm->tm_year << endl;cout << "month : " << 1 + ltm->tm_mon << endl;cout << "day : " << ltm->tm_mday << endl;cout << "hour : " << ltm->tm_hour << ":";cout << ltm->tm_min << ":";cout << ltm->tm_sec << endl;return 0;
}

运行结果:

exbot@ubuntu:~/wangqinghe/C++/time$ ./time1

from 1970  then the seconds passed : 1564988067

year : 2019

month : 8

day : 5

hour : 14:54:27

以20xx-xx-xx xx:xx:xx格式输出结果:

#include<iostream>
#include<ctime>
#include<cstdlib>
#include<cstdio>using namespace std;string Get_Current_Date();int main()
{cout << Get_Current_Date().c_str() << endl;return 0;
}string Get_Current_Date()
{time_t nowtime;nowtime = time(NULL);char tmp[64];strftime(tmp,sizeof(tmp),"%Y-%m-%d %H:%M:%S",localtime(&nowtime));return tmp;
}

运行结果:

exbot@ubuntu:~/wangqinghe/C++/time$ ./time2

2019-08-05 15:00:14

转载于:https://www.cnblogs.com/wanghao-boke/p/11305023.html

日期与时间(C/C++)相关推荐

  1. 【转】C/C++中的日期和时间

    头文件 time.h 函数用途 函数名 得到处理器时间 clock 得到时间差 difftime 设置时间 mktime 得到时间 time 得到以ASCII码表示的时间 asctime 得到字符串表 ...

  2. mysql 日期_「5」学习MySQL日期与时间类型发现:要养成注重细节的习惯

    在前面的学习中我们提到过字段类型这个概念,本篇的主题就是来讲一种常用而相对复杂的类型:日期与时间. MySQL中表示日期与时间的数据类型有很多种,但主要的不外乎下面五种: 记住上面表中的"范 ...

  3. python正则取字符串日期_python 正则表达式获取字符串中所有的日期和时间

    提取日期前的处理 1.处理文本数据的日期格式统一化 text = "2015年8月31日,衢州元立金属制品有限公司仓储公司(以下简称元立仓储公司)成品仓库发生一起物体打击事故,造成直接经济损 ...

  4. linux7设置时间,CentOS 7 设置日期和时间

    现代操作系统分为以下两种类型的时钟: 实时时钟(Real-Time Clock,RTC),通常称为硬件时钟(一般是系统主板上的集成电路),它完全独立于操作系统的当前状态,即使在计算机关闭时也能运行. ...

  5. Sql Server函数全解(四)日期和时间函数

    阅读目录 1.获取系统当前日期的函数getDate(); 2.返回UTC日期的函数UTCDATE() 3.获取天数的函数DAY(d) 4.获取月份的函数MONTH(d) 5.获取年份的函数YEAR(d ...

  6. Python学习笔记.OS学习笔记 OS操作系统(operating system)(三) 日期和时间

    日期和时间: 好多库函数: datetime time calendar dateutil ...and so on 日期表示的二义性,很烦人! 1/6/2010 你不知道到底是2010年的1月6日, ...

  7. java中日期的数据类型是啥_用于存储日期和时间的最合适的SQL和Java数据类型

    使用以下格式处理日期和时间的最合适的MySQL和Java数据类型是什么:yyyy.MM.dd hh:mm:ss 在持久层(jdbc类型)中使用的相应Java类型是java.sql.Timestamp. ...

  8. 日期、时间库使用备注

    日期.时间库 c/c++ 标准库 clock():返回程序消耗处理器时间 示例: /* clock example: frequency of primes */ #include <stdio ...

  9. C++中的日期和时间

    1.C++中的时间和日期 C++标准库没有提供所谓的日期类型,C++继承了C语言用于日期和时间操作的结构和函数.为了使用日期和时间相关的函数和结构,需要在C++程序中引用"ctime&quo ...

  10. pandas使用max函数和min函数计算dataframe日期(时间)数据列中最大日期和最小日期对应的数据行(maximum and minimum date or time row)

    pandas使用max函数和min函数计算dataframe日期(时间)数据列中最大日期和最小日期对应的数据行(maximum and minimum date or time row in data ...

最新文章

  1. 节省3500万的背后,运维如何兼顾成本与效率?
  2. linux内核I2C子系统学习(三)
  3. SAP ERP差异来源和差异处理
  4. 用FFmpeg编码h264视频介绍
  5. 假期周进度总计(四)
  6. 机器学习中应用到的各种距离介绍(附上Matlab代码)
  7. 《实变函数简明教程》,P78,第16题(依测度收敛 推导 依测度收敛,几乎处处小于 推导 几乎处处小于)
  8. python 飞机大战爆炸效果_Pygame飞机大战为什么飞机与敌机碰撞后不再有图片动态切换效果...
  9. JTA transaction unexpectedly rolled back (maybe due to a timeout)
  10. python实验--文字小游戏(小黑屋)
  11. 以技术入股物流细分领域,是对赌还是协同发展?--专访握物流CEO欧阳铭
  12. [luogu]P1852跳跳棋
  13. CMMI-配置管理(CM)
  14. 非常好用的开源矢量地图切片工具
  15. 天气预报API及城市代码[最详细]
  16. Ubuntu 硬盘”分区“图文教程
  17. 用计算机弹出生僻字的歌,抖音生僻字是什么歌?抖音生僻字歌词注音完整版
  18. 2016百度之星总结帖
  19. 机器人建模----运动学模型及代码实现
  20. Jmeter压力测试案例

热门文章

  1. 《程序设计与数据结构》第3周学习总结
  2. Ajax与CustomErrors的尴尬
  3. quagga源码分析--路由信息处理zebra-rib
  4. 如何部署Zabbix服务端
  5. STL sector 应用
  6. 《Linux内核分析》 第四节 扒开系统调用的三层皮(上)
  7. Javascript常用的设计模式详解
  8. mysql主从安装配置_如何安装和配置mysql主从同步
  9. Matlab看跌期权二叉树,欧式期权二叉树MATLAB程序
  10. java 日期是否合法_检测日期字符串是否为合法(java版)