Utilice c para mostrar la hora en la computadora. ¿Cómo escribir este programa?
# incluir lttime.h gt
# incluir ltstdio.h gt
int main( void)
{
time _ t t = time(0);
char tmp */
int tm _ min/*intervalo de valor minuto es*/
int tm _ hora/* cuando el intervalo de valor es*/
int tm _ mday/*El día del mes: el rango de valores es, donde 0 significa domingo, 1 significa lunes, etc. Analogía */
int tm _ yday/*El número de días que comienzan desde 65438 el 1 de octubre de cada año; el rango de valores es, donde 0 significa 65438 1 de octubre, 1 significa 65438 2 de octubre, y así sucesivamente */
int tm _ isdst/*Identificador de horario de verano. Cuando se implementa el horario de verano, tm_isdst es positivo. Sin horario de verano, tm_isdst es 0; cuando la situación es desconocida, Tm_isdst() es negativo. */
};
3. Visualización de la hora:
El archivo de encabezado time.h proporciona la función asctime() (el parámetro es el puntero de estructura tm ) y la función ctime () (el parámetro es una estructura time_t) muestra la hora en un formato fijo y los valores de retorno de ambas funciones son cadenas de tipo char*. El formato de hora devuelto es: día de la semana, fecha, hora, minuto, segundo año\n\n\0. ;Time.h también proporciona dos funciones diferentes para convertir la hora del calendario (un número entero representado por time_t) al formato de hora tm que normalmente vemos y que muestra año, mes, día, hora y minuto respectivamente:
struct TM * hora GM(const time _ t * timer);
La función de la función es convertir la hora del calendario en hora estándar universal (GMT) y devolver una estructura tm para guardar esta hora.
struct TM * hora local(const time _ t * timer); la función localtime() convierte la hora del calendario a hora local.
# incluir ltstdafx.h gt
# incluir lttime.h gt
# incluir ltstdio.h gt
# incluir ltstdlib. h gt
int main(void)
{
struct tm *local, *ptr//Define la información de tiempo de almacenamiento del puntero de estructura tm.
time_tt//Estructura u objeto de tiempo
t = time (null); //Obtiene la hora del calendario del sistema actual.
//Obtener la hora del calendario mediante la función Time().
//Su prototipo es: time _ t time(time _ t * timer);
local=localtime. t); //La función localtime() convierte la hora del calendario en hora local.
printf("La hora local es: d\n ", Local- gt; TM _ hora); // Genera el miembro de tiempo de la estructura tm.
printf("La hora UTC es: d\n ", local- gt; TM _ hora
// local = gmtime(amp; t);
//La función de la función gmtime() es convertir la hora del calendario a la hora estándar universal (es decir, la hora media de Greenwich).
//Y devolver una estructura tm para ahorrar este tiempo.
ptr = gmtime(amp;t); //Convierte la hora del calendario a hora estándar universal.
printf(" La hora UTC es s\n ", hora ASC(ptr)); //Formato de impresión hora estándar universal
printf("La hora local es s\n ", ctime(amp;t));//Salida de la hora local
/*where/*función asctime() (el parámetro es el puntero de estructura tm) y función ctime() (el parámetro es la estructura time_t) en un formato fijo formato Hora de visualización, los valores de retorno de ambas funciones son cadenas de tipo char*. El formato de hora devuelto es: día de la semana, fecha, hora, minuto, segundo año\n\0 */
Devuelve 0;
}
4 .Cálculo de la diferencia horaria:
Función utilizada: la función de sincronización en C/C es clock(), y su tipo de datos relacionado es clock_t. La función de reloj se define en MSDN de la siguiente manera:
clock_t clock(void); La función devuelve el número de ticks del reloj de la CPU entre "iniciar este proceso de programa" y "llamar a la función clock() en el programa", donde clock_t es un entero largo, que es un tiempo- guardar el tipo de datos. En el archivo time.h, también se define una constante CLOCKS_PER_SEC para indicar cuántas unidades de temporización de reloj habrá en un segundo. Se define de la siguiente manera:
#Defina el número de relojes por segundo ((. clock_t) 1000)
Cada milésima de segundo (1 ms), el valor devuelto al llamar a la función clock() se suma a 1 ms. La longitud de la unidad de temporización del reloj es 1 ms, por lo que la precisión de la temporización es. también 1ms. Entonces, ¿podemos cambiar la definición de CLOCKS_PER_SEC para hacerla más grande y aumentar la precisión de la sincronización? Esto no es bueno. En C/C estándar, la unidad de tiempo mínima es 1 milisegundo. double difftime(time_t time 1, time_t time 0); esta función se utiliza para calcular la diferencia horaria.
#Incluye "stdafx.h"
#Incluye "time.h"
#Incluye "stdio.h"
# Contiene " stdlib.h "
int main(void)
{
time_t c_start, t_start, c_end, t_end
c _ inicio = reloj();
t_start = tiempo(nulo);
Sistema("pausa"); /p>
t_end = time(empty);
printf("El tiempo de pausa tomó f milisegundos ().\n ", difftime(c_end, c_start));
p>
printf("Reloj() usa una pausa de f segundos.
\n ",difftime(t_end,t_start));
Sistema("pausa");
Devuelve 0;
}
5. Otros usos del tiempo
Como semilla de números aleatorios, dado que el tiempo obtenido es en realidad un entero largo de tipo doble, la función time(NULL) se utiliza para generar un número aleatorio como SRAND ( time (NULL)) es mejor
#Contiene "stdafx.h"
#Contiene "time.h"
#Contiene "stdio.h" "
#Contiene " stdlib.h "
int main(void)
{
srand(time(NULL));
//Establece la semilla. Si comentas esta función, obtendrás el mismo número aleatorio 10 cada vez que ejecutes el programa
for(int I = 0; ilt100. ; i. )
{
printf("d\t ", rand());
}
Sistema(" pausa") ;
Devuelve 0;