我需要将某些integers
转换为date
。首先,我确实知道Boost :: Gregorian库,但是我不能使用它,因为它无法与Clang一起编译,这是我的应用程序获得最佳性能的地方。
我正在解析原始数据库文件,因此性能将很重要,因为转换将发生数十万次以表示出生日期,时间戳记,约会时间等。
根据解析的数据库,我有几个不同的原始日期。我使用的原始日期是:
System 1: 1706-02-24
System 2: 1840-01-01
我以这种方式尝试过,但是当我尝试将其打印出来时,出现错误消息timeinfo2
为null:
time_t rawtime; struct tm* timeinfo; time(&rawtime); timeinfo = localtime(&rawtime); timeinfo->tm_year = 1706 - 1900; timeinfo->tm_mon = 2 - 1; timeinfo->tm_mday = 24; timeinfo->tm_mday += 98040; // days since origin time_t newtime; struct tm* timeinfo2; newtime = mktime(timeinfo); timeinfo2 = localtime(&newtime);
结果应为:
1968-08-12
我需要将一些整数转换为日期。首先,我确实知道Boost :: Gregorian库,但是我无法使用它,因为它无法与Clang一起编译,这是我的应用程序获得最佳效果的地方...
我非常尊重Howard编写的内容,但是我需要尽快执行的内容,并且担心当我需要的是<chrono>
到int
时包括整个日期库。