ホームページ > バックエンド開発 > C++ > C で文字列時間を time_t に変換し、文字列時間を比較するにはどうすればよいですか?

C で文字列時間を time_t に変換し、文字列時間を比較するにはどうすればよいですか?

DDD
リリース: 2024-11-18 03:54:02
オリジナル
240 人が閲覧しました

How Can I Convert String Time to time_t and Compare String Times in C  ?

文字列時刻を 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 サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート