Afficher l'heure locale avec strftime
Bonjour à tous,
J'essaye de faire afficher l'heure locale à l'aide de la fonction strftime mais sans succès : c'est toujours l'heure UTC qui est affiché... alors que j'utilise la fonction localtime pour remplir la structure de type tm.
Si dessous un extrait de programme que j'ai écrit :
Code:
1 2 3 4 5 6 7 8 9 10 11
| time_t heure;
struct tm * t;
char date[64];
time(&heure);
t = locatime(&heure);
printf("Printf : Heure %i", t->tm_hour);
strftime(date, 64, "%H", t);
printf("Strftime : Heure %s", date); |
A l'exécution j'obtiens :
Code:
1 2
| Printf : Heure 14
Strftime : Heure 12 |
J'ai cherché un peu de partout mais je n'arrive pas à comprendre pourquoi l'heure affiché par strftime est l'heure UTC et non l'heure locale. Je me suis penché du coté des variables TZ et LC_TIME mais j'ai du mal à comprendre le rapport...
Je suis preneur d'un petit coup de main ou d'une explication ;)
Merci d'avance :P