Hola a todos,
Estoy teniendo problemas con las funciones
time y
localtime para obtener la hora local. En el siguiente ejemplo que muestro intento obtener dos fechas diferentes con un
delay de 5 seg entre ellas, usando variables independientes.
Antes de obtener la segunda fecha imprimo también en pantalla la primera para la comprobación.
Código C:
Ver original#include <stdio.h>
#include <time.h>
#include <windows.h>
#define TFECHA 30
int main ()
{
time_t t1,t2;
struct tm *tinfo1, *tinfo2;
char f1[TFECHA],f2[TFECHA];
strftime(f1
, TFECHA
, "%d/%m/%Y %H:%M:%S", tinfo1
);
Sleep(5000);
strftime(f1
, TFECHA
, "%d/%m/%Y %H:%M:%S", tinfo1
); strftime(f2
, TFECHA
, "%d/%m/%Y %H:%M:%S", tinfo2
);
return 0;
}
Sin embargo al imprimir al final las dos últimas fechas, los valores que se obtienen son exactamente iguales. No entiendo por qué al ejecutar
tinfo2=localtime(&t2) (linea 21) la estructura t1 también se ve alterada...
La salida que obtengo es:
Código:
25/12/2013 23:54:14
25/12/2013 23:54:19
25/12/2013 23:54:19
Si alguien pudiera aclarármelo se lo agradecería.
Saludos.