El archivo de encabezado time.h contiene definiciones de funciones para obtener y manipular información de fecha y hora.
- Describe tres tipos de datos relacionados con el tiempo.
- clock_t : clock_t representa la fecha como un número entero que forma parte del tiempo del calendario.
- time_t : time_t representa la hora del reloj como un número entero que forma parte de la hora del calendario.
- struct tm : struct tm contiene la fecha y la hora que contiene:
- clock_t : clock_t representa la fecha como un número entero que forma parte del tiempo del calendario.
C
struct tm { // seconds, range 0 to 59 int tm_sec; // minutes, range 0 to 59 int tm_min; // hours, range 0 to 23 int tm_hour; // day of the month, range 1 to 31 int tm_mday; // month, range 0 to 11 int tm_mon; // The number of years since 1900 int tm_year; // day of the week, range 0 to 6 int tm_wday; // day in the year, range 0 to 365 int tm_yday; // daylight saving time int tm_isdst; }
- También contiene la macro CLOCKS_PER_SEC que contiene el número de veces que el reloj del sistema hace tictac por segundo.
- Funciones predefinidas en el tiempo.h
S.No | Nombre de la función | Explicación |
---|---|---|
1. | asctime() | Esta función devuelve la fecha y la hora en el formato día mes fecha horas:minutos:segundos año. Por ejemplo: sábado 27 de julio a las 11:26:03 de 2019. La función asctime() devuelve una string al tomar la variable struct tm como parámetro. |
2. | reloj() | Esta función devuelve el tiempo de procesador consumido por un programa |
3. | tiempoc() | Esta función devuelve la fecha y la hora en el formato día mes horas:minutos:segundos año Por ejemplo: Sáb 27 de julio 11:26:03 La hora de 2019 se imprime en función del puntero devuelto por Calendar Time |
4. | diftime() | Esta función devuelve la diferencia entre los tiempos proporcionados. |
5. | gmtime() | Esta función imprime la fecha y la hora UTC (hora universal coordinada). El formato para gmtime() y asctime() es el mismo |
6. | mktime() | Esta función devuelve el equivalente en tiempo de calendario usando struct tm. |
7. | tiempo() | Esta función devuelve el equivalente de tiempo de calendario utilizando el tipo de datos time_t. |
8. | strftime() | Esta función ayuda a formatear la string devuelta por otras funciones de tiempo utilizando diferentes especificadores de formato. |
- Ejemplos:
- Programa para imprimir la fecha y hora del sistema.
- Programa para imprimir la fecha y hora del sistema.
C
#include <stdio.h> #include <time.h> int main(void) { struct tm* ptr; time_t t; t = time(NULL); ptr = localtime(&t); printf("%s", asctime(ptr)); return 0; }
Producción:
Tue Aug 6 09:00:29 2019
2. Programa para imprimir UTC (Tiempo Universal Coordinado) del sistema.
C
#include <stdio.h> #include <time.h> int main(void) { struct tm* ptr; time_t t; t = time(NULL); ptr = gmtime(&t); printf("%s", asctime(ptr)); return 0; }
Producción:
Tue Aug 6 09:00:31 2019
3. Programa para calcular el tiempo que se tarda en sumar dos números programa.
Nota: si el usuario ingresa lentamente, ese tiempo también se suma al tiempo total de ejecución.
C
#include <stdio.h> #include <time.h> int main(void) { time_t start, end; start = time(NULL); int a, b; scanf("%d %d", &a, &b); printf("Sum of %d and %d is %d\n", a, b, a + b); end = time(NULL); printf("Time taken to print sum is %.2f seconds", difftime(end, start)); }
Producción:
Sum of 4196144 and 0 is 4196144 Time taken to print sum is 0.00 seconds
4. Programa para encontrar las marcas del reloj.
C
#include <math.h> #include <stdio.h> #include <time.h> int frequency_of_primes(int n) { // This function checks the number of // primes less than the given parameter int i, j; int freq = n - 1; for (i = 2; i <= n; ++i) for (j = sqrt(i); j > 1; --j) if (i % j == 0) { --freq; break; } return freq; } int main() { clock_t t; int f; t = clock(); f = frequency_of_primes(9999); printf("The number of primes lower" " than 10, 000 is: %d\n", f); t = clock() - t; printf("No. of clicks %ld clicks (%f seconds).\n", t, ((float)t) / CLOCKS_PER_SEC); return 0; }
Producción:
The number of primes lower than 10, 000 is: 1229 No. of clicks 2837 clicks (0.002837 seconds).
5. Programa para imprimir la hora como hora: minuto devuelto por el archivo asctime().
C
#include <stdio.h> #include <time.h> int main() { time_t rawtime; struct tm* timeinfo; // Used to store the time // returned by localetime() function char buffer[80]; time(&rawtime); timeinfo = localtime(&rawtime); strftime(buffer, 80, "Time is %I:%M%p.", timeinfo); // strftime() function stores the // current time as Hours : Minutes //%I %M and %p-> format specifier // of Hours minutes and am/pm respectively*/ // prints the formatted time puts(buffer); return 0; }
Producción:
Time is 09:00AM.
Publicación traducida automáticamente
Artículo escrito por avsadityavardhan y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA