2

<ctime>を持っているDateオブジェクトを使用して現在の時刻を取得する簡単な「初心者」の方法はありますか?

int month
int day
int year

それはメンバー変数ですか?ありがとう。

4

2 に答える 2

4
time_t tt = time(NULL); // get current time as time_t
struct tm* t = localtime(&tt) // convert t_time to a struct tm
cout << "Month "  << t->tm_mon 
     << ", Day "  << t->tm_mday
     << ", Year " << t->tm_year
     << endl

構造体intはすべて0ベース(0 = Jan、1 = Feb)であり、月( )、週()、年( )tmの日など、さまざまな日の測定値を取得できます。tm_mdaytm_wdaytm_yday

于 2010-04-14T07:14:12.350 に答える
2

localtime_rがある場合、これはlocaltimeの再入可能なバージョンであるため、 localtimeではなくlocaltime_rを使用する必要があります。

#include <ctime>
#include <iostream>

int main()
{
    time_t tt = time(NULL); // get current time as time_t
    tm  tm_buf;
    tm* t = localtime_r(&tt, &tm_buf); // convert t_time to a struct tm

    std::cout << "Month "  << t->tm_mon
              << ", Day "  << t->tm_mday
              << ", Year " << t->tm_year
              << std::endl;
    return 0;
}
于 2010-04-14T07:49:00.597 に答える