Mise en forme Unix timestamp avec ctime en c
Je suis en train de format de 10 chiffres Unix time stamp (actuellement une chaîne de caractères) à l'aide de ctime.
Cependant, ctime() attend un paramètre de type time_t, pas une chaîne de caractères.
Que dois-je faire avant que je puisse utiliser ctime?
En d'autres termes, puis-je facilement convertir la chaîne en un time_t?
- Utilisation
strtoull
(à vérifier pour les dépassements). - Le temps est une signature de la quantité, pas non signé. Négatif fois avant de 1970-01-01 00:00:00Z (et oui, qui laisse une ambiguïté entre les erreurs et une seconde avant L'Époque).
- J'étais très conscient de cela. Cependant, en parlant de "10 chiffres" timestamp (ou au moins peut être interprété à faire) de restreindre la portée de la non-négatif horodateurs.
InformationsquelleAutor jwheels | 2012-09-05
Vous devez vous connecter pour publier un commentaire.
Vous voulez dire que vous avez quelque chose comme 1346426869 comme une chaîne de caractères et voulez qu'il soit un time_t?
Time_t type est juste un entier. C'est le nombre de secondes depuis l'Epoch. Vous aurez besoin pour analyser la chaîne en premier.
Commencer ici:
http://www.gnu.org/software/libc/manual/html_node/General-Time-String-Parsing.html#General-Time-String-Parsing
et de travailler votre chemin vers l'avant à partir de là.