02-13-2012 06:24 PM
Hola, necesito ayuda con las fechas.
Tengo 2 fechas (struct tm), lo que necesito saber si se puede hacer operaciones en base a las horas con estas 2 fechas.
Principalmente agregar y quitar horas.
Cualquier ayuda o comentario es bienvenido, muchas gracias.
Alex
Solved! Go to Solution.
02-14-2012 12:09 AM
Hola, se pueden hacer operaciones entre fechas pasando los valores de las estructuras a la función mktime () que restituye un valor en segundos. La operación inversa es localtime () u gmtime ().
Analogamente, los valores pueden pasarse a la función MakeDateTime (). GetDateTimeElements () se utiliza para pasar del valor en segundos a la correspondiente fecha.
02-14-2012 01:41 AM - edited 02-14-2012 01:42 AM
Hola, aquí tienes un ejemplo de operaciones en el tiempo; puedes ejecutar estas líneas en la ventana de la Interactive Execution.
#include <ansi_c.h>
#include <utility.h>
static time_t t;
static struct tm *tm;
t = time (NULL);
tm = localtime (&t);
DebugPrintf ("Local time is %d-%d-%d %d:%02d\n",
tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min);
DebugPrintf ("Adding 2 hours...\n");
t += 3600 * 2;
tm = localtime (&t);
DebugPrintf ("New time is %d-%d-%d %d:%02d\n",
tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min);
DebugPrintf ("Adding 2 days...\n");
t += 86400 * 2;
tm = localtime (&t);
DebugPrintf ("New time is %d-%d-%d %d:%02d\n",
tm->tm_year + 1900, tm->tm_mon + 1, tm->tm_mday, tm->tm_hour, tm->tm_min);
Las operaciones con MakeDateTime y las funciones relacionadas son similares.
02-14-2012 09:55 AM
Hola Roberto:
Muchas gracias, son exactamente lo que necesito, gracias por tu soporte.
Saludos...
Alex