首页 > 其他分享 >cpp chrono basic

cpp chrono basic

时间:2023-02-27 01:22:32浏览次数:32  
标签:cout chrono int since basic cpp now local

// cpp 20
//c++ - Number of seconds since midnight - Stack Overflow
//https://stackoverflow.com/questions/61273498/number-of-seconds-since-midnight
int main(int argc, char** argv)
{
    std::system("chcp 65001");

    using namespace std;
    using namespace std::chrono;

    // chrono time point to string
    auto chronoNow = chrono::system_clock::now();
    cout << chronoNow << endl;
    std::time_t tt = chrono::system_clock::to_time_t(chronoNow);
    char buffer[32];
    std::tm ttm;
    localtime_s(&ttm, &tt);
    strftime(buffer, 32, "%Y-%m-%d %H:%M:%S", &ttm);
    cout << buffer << endl;
    auto remainder = chrono::duration_cast<chrono::microseconds>(chronoNow.time_since_epoch()) % chrono::seconds(1);
    cout << remainder.count() << endl;
    string timeStr(buffer);
    timeStr += std::format(".{:06d}", remainder.count());
    cout << timeStr << endl;

    // milliseconds since epoch
    auto millisec_since_epoch = chrono::duration_cast<chrono::milliseconds>(chrono::system_clock::now().time_since_epoch());
    cout << millisec_since_epoch << endl;
    cout << millisec_since_epoch.count() << endl;
    cout << millisec_since_epoch / std::chrono::milliseconds(1) << endl;

    // milliseconds since start of the day
    auto now = chrono::system_clock::now();
    auto today = chrono::floor<chrono::days>(now);
    auto hours_since_midninght = duration_cast<hours>(now - today);
    int hours_since_midninght_int = hours_since_midninght.count();
    cout << hours_since_midninght << endl;
    cout << hours_since_midninght_int << endl;

    // chrono in local zone
    auto local_now = chrono::current_zone()->to_local(chrono::system_clock::now());
    auto local_today = chrono::floor<chrono::days>(local_now);
    auto local_hours_elapsed = chrono::duration_cast<chrono::hours>(local_now - local_today);
    cout << local_hours_elapsed << endl;
    cout << local_hours_elapsed.count() << endl;

    return 0;
}

标签:cout,chrono,int,since,basic,cpp,now,local
From: https://www.cnblogs.com/yusisc/p/17158357.html

相关文章

  • wireshark集成Backward-cpp编译
    原文地址:https://www.cnblogs.com/liqinglucky/p/backward-in-wireshark.html在之前的文章中已经介绍过ubuntu系统wireshark源码编译与安装和Backward-cpp:Segmentation......
  • cpp generate random number to fill array,order the array via quick sort
    //model.util.h#include<iostream>#include<random>template<typenameT>Tget_random_num(Tmin,Tmax){std::random_devicerd;std:......
  • C程序集成Backward-cpp使用示例
    原文地址:https://www.cnblogs.com/liqinglucky/p/backward-in-C.html在文章Backward-cpp:Segmentationfault时打印backtrace中已经介绍了backward-cpp的编译安装。不过......
  • [oeasy]python0093_电子游戏起源_视频游戏_达特茅斯_Basic_家酿俱乐部
    编码进化回忆上次内容EdRobert的创业之路从售卖diy组装配件到进军计算器市场最后发布牛郎星8800intel8080的出现让人人都有自己的个人电脑BillGate和Pau......
  • [oeasy]python0093_电子游戏起源_视频游戏_达特茅斯_Basic_家酿俱乐部
    编码进化回忆上次内容EdRobert的创业之路从售卖diy组装配件到进军计算器市场最后发布牛郎星8800intel8080的出现让人人都有自己的个人电脑......
  • PAT Basic 1007. 素数对猜想
    PATBasic1007.素数对猜想1.题目描述:让我们定义\(d_n\)为:\(d_n=p_{n+1}−p_n\),其中\(p_i\)是第\(i\)个素数。显然有\(d_1=1\),且对于\(n>1\)有\(d_n\)是偶数。“素数对......
  • PAT Basic 1006. 换个格式输出整数
    PATBasic1006.换个格式输出整数1.题目描述:让我们用字母 B 来表示“百”、字母 S 表示“十”,用 12...n 来表示不为零的个位数字 n(<10),换个格式来输出任一个不超......
  • PAT Basic 1005. 继续(3n+1)猜想
    PATBasic1005.继续(3n+1)猜想1.题目描述:卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算......
  • PAT Basic 1004. 成绩排名
    PATBasic1004.成绩排名1.题目描述:读入 n(>0)名学生的姓名、学号、成绩,分别输出成绩最高和成绩最低学生的姓名和学号。2.输入格式:每个测试输入包含1个测试用例,格......
  • PAT Basic 1003. 我要通过!
    PATBasic1003.我要通过!1.题目描述:“答案正确”是自动判题系统给出的最令人欢喜的回复。本题属于PAT的“答案正确”大派送——只要读入的字符串满足下列条件,系统......