ホームページ  >  記事  >  バックエンド開発  >  C で時刻を表す文字列を「time_t」に変換するにはどうすればよいですか?

C で時刻を表す文字列を「time_t」に変換するにはどうすればよいですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-11-10 07:41:02147ブラウズ

How to Convert a String Representing Time to a `time_t` in C  ?

時間を表す文字列を C の time_t に変換する

C で時間を扱う場合、次のような文字列があるシナリオに遭遇することがあります。は特定の時間を表すため、移植可能な time_t データ型に変換する必要があります。 time_t 型は、1970 年 1 月 1 日 00:00:00 UTC から経過した秒数として時間を表します。

time_t

C 11 以降では、

std::get_time 関数を使用して、文字列を std::tm 構造体に解析し、mktime を使用して time_t に変換できます。 :

#include <iostream>
#include <sstream>
#include <time.h>

int main() {
  std::string time_details = "16:35:12";
  std::tm tm;
  std::istringstream ss(time_details);
  ss >> std::get_time(&tm, "%H:%M:%S");
  std::time_t time = mktime(&tm);

  // Print the converted time_t
  std::cout << "Converted time: " << time << std::endl;

  return 0;
}

2 つの比較時間

time_t 形式で複数の時間を取得すると、それらを比較してどれが早いかを判断できます。

以上がC で時刻を表す文字列を「time_t」に変換するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。