HourOfTheMonth - C++ Builder

C++ Builder 参考手册System::DateutilsHourOfTheMonth


这个日期时间在这一个月的第几个小时

头文件:#include <System.DateUtils.hpp>
命名空间:System::Dateutils
函数原型:

System::Word __fastcall HourOfTheMonth(const System::TDateTime AValue);

参数:

  • AValue:日期时间类型变量;

返回值:

  • 返回值为 AValue 日期时间在这个月的第几个小时;
  • 另外一个函数 HourOfTheYear 是一个日期时间在这一年的第几个小时。

例:用两种方法计算现在是本月的第几个小时:1:用函数 HourOfTheMonth;2:利用两个日期相减为双精度浮点数的天数计算小时数:

#include <System.DateUtils.hpp>
void __fastcall TForm1::Button1Click(TObject *Sender)
{
    TDateTime dt = Sysutils::Now();
    Memo1->Lines->Add(L"现在时间 " + FormatDateTime(L"yyyy/mm/dd hh:nn:ss.zzz", dt));
    Memo1->Lines->Add(String().sprintf(L"现在是本月的第 %u 小时", HourOfTheMonth(dt)));

    unsigned short iYear = YearOf(dt); // 年
    unsigned short iMonth = MonthOf(dt); // 月
    TDateTime d0 = EncodeDate(iYear, iMonth, 1); // iYear 年 iMonth 月 1 日
    double lfDays = dt - d0; // 现在时间距离本月 1 日的天数,小数,例如 0.5 为 12 小时
    int iHours = lfDays * 24;
    Memo1->Lines->Add(String().sprintf(L"现在是本月的第 %d 小时", iHours));
}

运行结果:


相关:


C++ Builder 参考手册System::DateutilsHourOfTheMonth

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容