文字列時刻を C の Time_t に変換する
C で時刻データを扱う場合、多くの場合、文字列と time_t 型の間で変換する必要があります。 、Unix エポックからの時間を整数の秒数で表します。この記事では、時間の変換と比較に関する 2 つの質問について検討します。
文字列時間の変換
「hh」形式の時間を含む文字列変数 time_details があるとします。 :mm:ss」、たとえば「16:35:12」。この文字列を time_t に変換するには、std::get_time 関数を使用できます。
struct std::tm tm; std::istringstream ss("16:35:12"); ss >> std::get_time(&tm, "%H:%M:%S"); std::time_t time = mktime(&tm);
ここで、tm は、分割された時間コンポーネントを表す std::tm 構造体です。 std::istringstream は時間文字列の読み取りに使用され、mktime は tm 構造体を time_t に変換します。
2 つの文字列時間の比較
時間を含む 2 つの文字列の比較は次のように行うことができます。最も早い時間を判断するのに役立ちます。たとえば、時間を「18:35:21」と「22:45:31」として表す 2 つの文字列 curr_time と user_time があるとします。
これらの時間を比較するには、これらを std に変換します。 :time_t は、上記と同じ手法を使用して型を入力します。 time_t 値を取得したら、標準の比較演算子 (<、<=、>、>=) を使用するだけで最も早い時間を決定できます。
以上がC で文字列時間を time_t に変換し、文字列時間を比較するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。