PR_NormalizeTime

使用回调函数将时钟/日历时间的字段调整到其正确的范围。

语法

#include <prtime.h>

void PR_NormalizeTime (
  PRExplodedTime *time,
  PRTimeParamFn params);

参数

该函数具有以下参数

time

指向 PRExplodedTime 格式的时钟/日历时间的指针。

params

时间参数回调函数。

返回值

无;time 参数由回调函数更改。

描述

此函数使用指定的时间参数回调函数调整指定时间结构的字段,使其处于正确的范围。

在以下情况下调用此函数

  • 在对日历时间对象的字段值直接执行算术运算后规范化时间。例如,如果您有一个] 对象表示 1998 年 3 月 3 日,并且您想说“1998 年 3 月 3 日之后的 40 天”,您可以简单地将 40 添加到 tm_mday 字段,然后调用 PR_NormalizeTime()

  • 计算可选字段值 tm_wdaytm_yday。例如,假设您想计算 1998 年 3 月 3 日的星期几。您可以将 tm_mday 设置为 3,tm_month 设置为 2,tm_year 设置为 1998,并将所有其他字段设置为 0,然后使用 PR_GMTParameters 调用 PR_NormalizeTime()。返回时,tm_wday(和 tm_yday)将为您设置。

  • 从一个时区转换为另一个时区。例如,如果输入参数 time 位于时区 A,而输入参数 params 表示时区 B,则当 PR_NormalizeTime() 返回时,time 将位于时区 B。