Cómo calcular la diferencia horaria usando lenguaje C
#include lt;stdio.hgt;
#include lt;stdlib.hgt;
#include lt;time.hgt;
void main()
{
tiempo de carácter sin firmar1[] = {?10, 8, 31, 9, 26}; [] = {10, 8, 31, 9, 50};
estructura tm t1 = {0};
estructura tm t2 = {0}; p>time_t _t1;
time_t _t2;
doble diferencia
t1.tm_year = time1[0] 100; .tm_mon = hora1[1];
t1.tm_mday = hora1[2];
t1.tm_hour = hora1[3];
t1.tm_min = tiempo2[4];
_t1 = _mkgmtime(amp;t1);
_t2 = _mkgmtime(amp;t2);
diff = difftime Fuerte> Ampliado:
En lenguaje C, hay dos funciones relacionadas para calcular la diferencia horaria, que son
time_t time( time_t *t) y clock_t clock(void)
Archivo de encabezado: time.h
La unidad de tiempo calculada es: s, ms?
time_t y clock_t se definen en la biblioteca time.h para guardar los datos de tiempo time_t y clock_t estructuras.
Valor de retorno:
1. ¿hora?: Devuelve el número de segundos que han transcurrido desde el 1 de enero de 1970 (la hora UTC es 0 horas, 0 minutos, 0 segundos). Si el parámetro t no es un puntero nulo, el tiempo devuelto se almacenará en la memoria a la que apunta t.
2. Reloj: Devuelve el número de ticks del reloj de la CPU entre "abrir este proceso de programa" y "programa que llama a la función reloj()". 1 unidad = 1 milisegundo. 1 unidad = 1 milisegundo.
Por tanto, podemos decidir qué función utilizar en función de la situación real.
hgt;
int main()
{
time_t c_start, t_start, c_end, t_end;
c_start = reloj(); //! lt; unidad: ms
t_start = tiempo(NULL);?//! en s
sistema("pausa");
c_end = clock();
t_end = time(NULL);
//! lt; difftime(time_t, time_t) devuelve el intervalo de tiempo entre dos variables time_t, es decir , la diferencia horaria
printf("La pausa utilizada f ms por reloj()\n",difftime(c_end,c_start));?
printf("La pausa utilizada f s por tiempo ()\n",difftime(t_end,t_start));
sistema("pausa");
return 0;
} p>
Por lo tanto, para calcular el tiempo ocupado de un bloque de funciones específico, simplemente llame a la misma función de cálculo de tiempo antes y después de ejecutar el bloque de funciones. Luego llame a la función difftime() para calcular la diferencia entre los dos y obtener el tiempo transcurrido.