C++输出当前日期时间的方法

这篇文章将为大家详细讲解有关C++输出当前日期时间的方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

成都地区优秀IDC服务器托管提供商(创新互联建站).为客户提供专业的服务器托管,四川各地服务器托管,服务器托管、多线服务器托管.托管咨询专线:028-86922220

首先介绍2个数据类型。

一个是time_t,与时间函数相关的变量,定义的变量记录着自 1970 年 1 月 1 日以来经过的秒数,也称作时间戳。

另一个是结构体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 到 11
   int tm_year;        // 自 1900 起的年数
   int tm_wday;        // 一周中的第几天,范围从 0 到 6
   int tm_yday;        // 一年中的第几天,范围从 0 到 365
   int tm_isdst;       // 夏令时
};

然后是3个与时间处理相关的函数,

time_t time(time_t *time);

一般使用time(NULL)即可,可得到当前时区的时间戳。

struct tm *localtime(const time_t *timer);

将time_t类型转换为本地时间的 tm 结构的指针。

size_t strftime(char *str, size_t maxsize, const char *format, const struct tm *timeptr)

str -- 这是指向目标数组的指针,用来复制产生的 C 字符串。

maxsize -- 这是被复制到 str 的最大字符数。

format -- 这是 C 字符串,包含了普通字符和特殊格式说明符的任何组合。这些格式说明符由函数替换为表示 tm 中所指定时间的相对应值。

格式说明符:

说明符

含义

实例

%a

缩写的星期几名称

Sun

%A

完整的星期几名称

Sunday

%b

缩写的月份名称

Mar

%B

完整的月份名称

March

%c

日期和时间表示法

Sun Aug 19 02:56:02 2012

%d

一月中的第几天(01-31)

19

%H

24 小时格式的小时(00-23)

14

%I

12 小时格式的小时(01-12)

05

%j

一年中的第几天(001-366)

231

%m

十进制数表示的月份(01-12)

08

%M

分(00-59)

55

%p

AM 或 PM 名称

PM

%S

秒(00-61)

02

%U

一年中的第几周,以第一个星期日作为第一周的第一天(00-53)

33

%w

十进制数表示的星期几,星期日表示为 0(0-6)

4

%W

一年中的第几周,以第一个星期一作为第一周的第一天(00-53)

34

%x

日期表示法

08/19/12

%X

时间表示法

02:50:06

%y

年份,最后两个数字(00-99)

01

%Y

年份

2012

%Z

时区的名称或缩写

CDT

%%

一个 % 符号

%

4行代码实现在屏幕输出当前时间:

char str[50];
time_t now = time(NULL);
strftime(str, 50, "%x %X", localtime(&now));
cout << str << endl;

关于C++输出当前日期时间的方法就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。


标题名称:C++输出当前日期时间的方法
新闻来源:http://ybzwz.com/article/jsipcg.html