Heim > Backend-Entwicklung > C++ > Hauptteil

Wie kann ich String-Zeiten in time_t konvertieren und String-Zeiten in C vergleichen?

DDD
Freigeben: 2024-11-18 03:54:02
Original
173 Leute haben es durchsucht

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

Konvertieren von String-Zeit in Time_t in C

Beim Arbeiten mit Zeitdaten in C ist es oft notwendig, zwischen Strings und dem Typ time_t zu konvertieren , die die Zeit als ganzzahlige Anzahl von Sekunden seit der Unix-Epoche darstellt. In diesem Artikel werden zwei Fragen im Zusammenhang mit der Zeitkonvertierung und dem Zeitvergleich untersucht.

Konvertieren einer String-Zeit

Angenommen, Sie haben eine String-Variable, time_details, die Zeit im Format „hh“ enthält :mm:ss“, beispielsweise „16:35:12“. Um diese Zeichenfolge in time_t umzuwandeln, können Sie die Funktion std::get_time verwenden:

struct std::tm tm;
std::istringstream ss("16:35:12");
ss >> std::get_time(&tm, "%H:%M:%S");
std::time_t time = mktime(&tm);
Nach dem Login kopieren

Hier ist tm eine std::tm-Struktur, die die zerlegten Zeitkomponenten darstellt. std::istringstream wird verwendet, um die Zeitzeichenfolge zu lesen, und mktime konvertiert die tm-Struktur in time_t.

Vergleich zweier Zeitzeichenfolgen

Der Vergleich zweier Zeitzeichenfolgen kann erfolgen nützlich, um den frühesten Zeitpunkt zu bestimmen. Angenommen, Sie haben zwei Zeichenfolgen, curr_time und user_time, die Zeiten als „18:35:21“ und „22:45:31“ darstellen.

Um diese Zeiten zu vergleichen, können Sie sie in std konvertieren: :time_t-Typen mit der gleichen Technik wie oben. Sobald Sie die time_t-Werte haben, können Sie einfach die Standardvergleichsoperatoren (<, <=, >, >=) verwenden, um den frühesten Zeitpunkt zu bestimmen.

Das obige ist der detaillierte Inhalt vonWie kann ich String-Zeiten in time_t konvertieren und String-Zeiten in C vergleichen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage