C++時間

1331 ワード

まず常識を補足します:1秒=1000ミリ秒1ミリ秒=1000マイクロ秒1 s=1000 ms 1 ms=1000μsはC++において、tm構造はtimeにある.hの定義は以下の通りである.
struct tm
{
          int tm_sec;       /*   –      [0,59] */
          int tm_min;       /*   -      [0,59] */
          int tm_hour;      /*   -      [0,23] */
          int tm_mday;      /*         -      [1,31] */
          int tm_mon;       /*   (     ,0    ) -      [0,11] */
          int tm_year;      /*   ,          1900 */
          int tm_wday;      /*    –      [0,6],  0     ,1     ,     */
          int tm_yday;      /*     1 1       –      [0,365],  0  1 1 ,1  1 2 ,     */
          int tm_isdst;     /*       ,        ,tm_isdst  。         ,tm_isdst 0;      ,tm_isdst   */
};

関数プロトタイプtime_t mktime(strcut tm* timeptr); 関数は、mktimeがパラメータtimeptrが指すtm構造データを、西暦1970年1月1日0時0分0秒から現在までのUTC時間を計算するために使用した秒数に変換することを示す.戻り値は経過した秒数を返します.
#include 
#include 
#include 
using namespace std;

/*
  : g++ main.cpp -o main
*/
int main()
{
    string src = "2019-10-17 14:48:27";
    string format = "%Y-%m-%d %H:%M:%S";
    struct tm res;
    strptime(src.c_str(), format.c_str(), &res);
    time_t sec = mktime(&res);
    cout << sec << endl;
	
    return 0;
}
/*
output:
1571294907
*/