Date et heure en C
Résolu/Fermé
A voir également:
- Date et heure en C
- 2go internet = combien d'heure - Forum Opérateurs & Réseaux mobiles
- Cette photo n’a pas été prise cette année. trouvez la date, l'heure et avec quel modèle d'appareil photo elle a été prise. - Forum Samsung
- Trouver une date de naissance gratuit - Forum Webmastering
- Colissimo heure de livraison après-midi - Forum Consommation & Internet
3 réponses
vignemail1
Messages postés
1246
Date d'inscription
vendredi 8 octobre 2004
Statut
Contributeur
Dernière intervention
13 septembre 2019
259
30 avril 2008 à 20:41
30 avril 2008 à 20:41
strftime(....) et strptime(....) utiliser avec time(NULL)
vignemail1
Messages postés
1246
Date d'inscription
vendredi 8 octobre 2004
Statut
Contributeur
Dernière intervention
13 septembre 2019
259
30 avril 2008 à 20:53
30 avril 2008 à 20:53
si tu fais un time(NULL), tu récupères le timestamp actuel, donc ensuite avec strftime, tu formates la sortie comme tu l'entend.
Un exemple :
Un exemple :
#include <time.h> #include <stdio.h> #include <stdlib.h> int main(int argc, char *argv[]) { char outstr[200]; time_t t; struct tm *tmp; tmp = localtime(&t); if (tmp == NULL) { perror("localtime"); exit(EXIT_FAILURE); } if (strftime(outstr, sizeof(outstr), argv[1], tmp) == 0) { fprintf(stderr, "strftime a renvoyé 0"); exit(EXIT_FAILURE); } printf("La chaîne résultat est \"%s\"\n", outstr); exit(EXIT_SUCCESS); }
vignemail1
Messages postés
1246
Date d'inscription
vendredi 8 octobre 2004
Statut
Contributeur
Dernière intervention
13 septembre 2019
259
30 avril 2008 à 21:07
30 avril 2008 à 21:07
time_t = int ou un long en interne alors que strftime prends un struct tm donc tu dois passer par localtime ou gmttime pour avoir la struct tm et ensuite formater par strftime
strftime converti en struct tm en une chaine formaté selon tes besoins et la stocke dans son premier paramètre, dans ton cas date.
Je pense que ton format doit plutôt être "%d-%m-%Y"
strftime converti en struct tm en une chaine formaté selon tes besoins et la stocke dans son premier paramètre, dans ton cas date.
Je pense que ton format doit plutôt être "%d-%m-%Y"
30 avril 2008 à 20:49
j'ai une variable que j'ai déclarer comme ceci
time_t t; puis ensuite je fais
time(&t);
...
Je sais pas trop comment m'expliquer c'est un peu nouveau pour moi
fin soit merci de ta réponse rapide