没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论



























摘要:
本文从介绍基础概念入手,探讨了在 中对日期和时间操作所用到的数据
结构和函数,并对计时、时间的获取、时间的计算和显示格式等方面进行了阐
述。本文还通过大量的实例向你展示了 头文件中声明的各种函数和数
据结构的详细使用方法。
关键字:(世界标准时间),(日历时间),(时
间点),(时钟计时单元)
.概念
在 中,对字符串的操作有很多值得注意的问题,同样,对时间
的操作也有许多值得大家注意的地方。最近,在技术群中有很多网友也多次问
到过 语言中对时间的操作、获取和显示等等的问题。下面,在这篇文章中,
笔者将主要介绍在 中时间和日期的使用方法
通过学习许多 库,你可以有很多操作、使用时间的方法。但在这之前你
需要了解一些“时间”和“日期”的概念,主要有以下几个:
():协调世界时,又称为世界标准时间,
也就是大家所熟知的格林威治标准时间(,)。
比如,中国内地的时间与 的时差为,也就是 。美国是
。
:日历时间,是用“从一个标准时间点到此时的时间经过的秒
数”来表示的时间。这个标准时间点对不同的编译器来说会有所不同,但对一个
编译系统来说,这个标准时间点是不变的,该编译系统中的时间对应的日历时
间都通过该标准时间点来衡量,所以可以说日历时间是“相对时间”,但是无论
你在哪一个时区,在同一时刻对同一个标准时间点来说,日历时间都是一样的。
:时间点。时间点在标准 中是一个整数,它用此时的时间和标
准时间点相差的秒数(即日历时间)来表示。
:时钟计时单元(而不把它叫做时钟滴答次数),一个时钟计时单
元的时间长短是由 控制的。一个 不是 的一个时钟周期,
而是 的一个基本计时单位。
我们可以使用 !"# 标准库中的 头文件。这个头文件中定义的时间和日
期所使用的方法,无论是在结构定义,还是命名,都具有明显的 语言风格。
下面,我将说明在 中怎样使用日期的时间功能。
$. 计时

中的计时函数是 %&,而与其相关的数据类型是 '。在
"(! 中,查得对 函数定义如下:
'%&)
这个函数返回从“开启这个程序进程”到“程序中调用 %&函数”时之间的
时钟计时单元()数,在 "(! 中称之为挂钟时间(
)。其中 ' 是用来保存时间的数据类型,在 文件中,我们
可以找到对它的定义:
*++',-.''(/0#!/(
1+2')
*3',-.''(/0#!/(
*+
很明显,' 是一个长整形数。在 文件中,还定义了一个常量
,-."'/4'"/,它用来表示一秒钟会有多少个时钟计时单元,其定义如
下:
*3,-."'/4'"/%%'&555&
可以看到可以看到每过千分之一秒( 毫秒),调用 ()函数返回的值就
加 。下面举个例子,你可以使用公式 %&,-."'/4'"/ 来计算一
个进程自身的运行时间:
'%&
6
+%7/89:;7<%&,-."'/4'"/&)
=
当然,你也可以用 函数来计算你的机器运行一个循环或者处理其它事件
到底花了多少时间:
#:>?
#:>@?
#:>?
%&
6
AAAA2AAAAAB5555555,)
AAAA'<3)
AAAA:@AAA:)
AAAAC测量一个事件持续的时间C

AAAA+%7917<&)
AAAAB%&)
AAAA%&AAAAAAA)
AAAA3B%&)
AAAA:B%:@&%3&,-."'/4'"/)
AAAA+%79+;7<:&)
AAAA1%7:7&)
=
在笔者的机器上,运行结果如下:
5555555155D555
上面我们看到时钟计时单元的长度为 毫秒,那么计时的精度也为 毫秒,那
么我们可不可以通过改变 ,-."'/4'"/ 的定义,通过把它定义的大一些,
从而使计时精度更高呢?通过尝试,你会发现这样是不行的。在标准 中,
最小的计时单位是一毫秒。
D.与日期和时间相关的数据结构
在标准 中,我们可通过 结构来获得日期和时间, 结构在
中的定义如下:
*++''(/0#!/(
:6
AAAAAAAAA')AAAAAAC秒 – 取值区间为E5<FGC
AAAAAAAAA')AAAAAAC分 取值区间为E5<FGC
AAAAAAAAA':)AAAAAC时 取值区间为E5<$DGC
AAAAAAAAA'1)AAAAAC一个月中的日期 取值区间为E<DGC
AAAAAAAAA')AAAAAAC月份(从一月开始,5 代表一月) 取值区间为
E5<GC
AAAAAAAAA'1)AAAAAC年份,其值等于实际年份减去 F55C
AAAAAAAAA'1)AAAAAC星期 – 取值区间为E5<HG,其中 5 代表星期天,
代表星期一,以此类推 C
AAAAAAAAA'11)AAAAAC从每年的 月 日开始的天数 – 取值区间为
E5<DHG,其中 5 代表 月 日, 代表 月 $ 日,以此类推 C
AAAAAAAAA')AAAAC夏令时标识符,实行夏令时的时候,' 为正。
不实行夏令时的进候,' 为 5;不了解情况时,'%&为负。C
AAAAAAAAA=)
*3''(/0#!/(
*+
!"# 标准称使用 结构的这种时间表示为分解时间%@
&。
剩余10页未读,继续阅读
资源评论


Dphenixiong
- 粉丝: 0
上传资源 快速赚钱
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- STM32F2产品技术培训_产品特性概览介绍.pdf
- 防静电地板施工方案(1).doc
- 【STM32U5线上课程】STM32U5 online training_14_Clock recovery syste
- STM32F0产品技术培训_看门狗(WWDG+IWWDG)模块介绍.pdf
- 配电箱柜的安装分项工程施工技术交底.doc
- 基于计算机网络在电子信息工程中的应用.docx
- 职位说明书销售代表》.docx
- revit-structure-2011-中文用户手册(全)-2.pdf
- 计算机操作系统期末复习资料.doc
- STM32L0产品技术培训_ L0系列 ADC、WWD、IWDG和EXTI模块介绍.pdf
- 地坪施工方案.docx
- 【STM32U5线上课程】STM32U5 online training_46_DSI host controller.
- 【STM32U5线上课程】STM32U5 online training_18.04_DMA Circular buff
- STM32F7系统配置控制器(SYSCFG), 系统时钟模块(RCC)和电源管理及功耗模块(PWR)介绍.pdf
- 商住楼施工现场安全管理资料(样本参考).doc
- 多层教学楼指标7.doc
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈



安全验证
文档复制为VIP权益,开通VIP直接复制
