Maison >développement back-end >C++ >Comment convertir une chaîne temporelle en `time_t` en C ?

Comment convertir une chaîne temporelle en `time_t` en C ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-10 14:25:02986parcourir

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

Conversion du temps de String en time_t en C

En C, vous pouvez rencontrer des scénarios dans lesquels une variable de chaîne stocke l'heure dans un format spécifique , tel que "hh:mm:ss". Pour traiter et utiliser efficacement ce temps, il est souvent nécessaire de le convertir en type time_t. Cette conversion vous permet de travailler avec l'heure de manière standard et polyvalente.

Processus de conversion :

C 11 a introduit un moyen pratique d'effectuer cette conversion en utilisant le std ::get_time function :

struct std::tm tm;
std::istringstream ss("16:35:12"); // Initialize the stringstream with your time string
ss >> std::get_time(&tm, "%H:%M:%S"); // Parse the time using strftime's format
std::time_t time = std::mktime(&tm); // Convert the parsed tm struct to time_t

Comparaison de temps :

Une fois que vous avez converti les deux chaînes de temps en types time_t, vous pouvez facilement les comparer pour déterminer laquelle représente une époque antérieure. Voici comment procéder :

std::time_t curr_time_t; // Convert your current time string to time_t
std::time_t user_time_t; // Convert your user time string to time_t

if (curr_time_t < user_time_t) {
  // curr_time is earlier than user_time
} else if (curr_time_t > user_time_t) {
  // user_time is earlier than curr_time
} else {
  // curr_time and user_time are the same
}

En utilisant ces méthodes, vous pouvez convertir efficacement des chaînes de temps en types time_t et comparer les heures en C pour répondre aux besoins spécifiques de votre application.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn