Sintaxis
int getTeofday (struct timeval *tp, struct timone *tz)El GetTimeOfday () la función se define en sys/tiempo.H archivo de cabecera.
Argumentos
Esta función toma dos argumentos:
El 1calle El argumento apunta al horario de tiempo estructura. El horario de tiempo La estructura se declara a continuación en sys/tiempo.H archivo de cabecera :
Struct TimeValLa estructura del horario de tiempo de estructura representa un tiempo calendario. Tiene dos miembros:
El 2Dakota del Norte El argumento apunta al zona horaria estructura. Normalmente debe configurarse en nulo porque Struct Timone es obsoleto. Este argumento es solo para la compatibilidad hacia atrás.
Valores de devolución
Sobre el éxito, el GetTimeOfday () return 0, para el fracaso, la función devuelve -1.
Simple Get Time e Impresión
#incluirProducción:
Aquí, sys/tiempo.H ha sido incluido para GetTimeOfday () Función y estructura de tiempo temporal. El GetTimeOfday () Función establece el tiempo de estructura de tiempo en TimeVal (current_time). TV_SEC es el número integral de segundos transcurridos desde el inicio del Época unix, A la medianoche de UTC el 1 de enero de 1970 y TV_USEC es un número adicional de microsegundos transcurridos desde TV_SEC. Si ejecuta el programa, debería ver la salida. Cada vez que ejecute el programa, la salida cambiará.
Error de argumento nulo
#incluirProducción:
En este ejemplo muestra ese primer argumento del GetTimeOfday () la función no debe ser nula. La advertencia de compilación vendrá si el primer argumento es nulo.
Formateo de tiempo actual Ejemplo
#incluirProducción:
En este ejemplo, muestra cómo imprimir la fecha y la hora en diferente formato. No es muy fácil representar fechas del valor de retorno de GetTimeOfday () función . Aquí, hora local() y strftime () Las funciones se utilizan para representar muy bien el valor de retorno de GetTimeOfday ().
El hora local() la función toma un argumento, que es una referencia a un puntero del TV_SEC campo de Estrucado Tiempo Tiempo y devuelve una referencia a un puntero de un estructura tm objeto.
El strftime () la función generará una cadena personalizada y formateada que muestra la fecha y hora desde el estructura tm puntero. Los especificadores de formato se utilizan para la pantalla formateada. Por ejemplo, la cadena de formato "%d-%m-%y%h:%m:%s" especifica la fecha y el tiempo de esta forma:
14-04-2020 13:09:42Los siguientes son los especificadores de conversión, pueden usarse para la pantalla formateada:
Especificador | Significado |
%a | El nombre abreviado del día de la semana según el local actual. |
%A | El nombre del día de la semana según el local actual. |
%b | Nombre del mes abreviado según el lugar actual. |
%B | Nombre del mes completo según el lugar actual. |
%C | La representación preferida de la fecha y la hora para la actualidad actual. |
%d | Como número decimal para el día del mes (rango 01 - 31). |
%H | Uso de 24 horas (rango 00 - 23) a la hora como número decimal. |
%I | Uso de 12 horas (rango 00 - 23) a la hora como número decimal. |
%j | Como número decimal para el día del año (rango 001-366). |
%metro | Como número decimal para el mes (rango 01 - 12). |
%METRO | El número decimal del minuto. |
%pag | Según el valor de tiempo especificado, 'AM' o 'PM' o las cadenas equivalentes para la localidad actual. |
%S | El número decimal del segundo. |
%X | Representación preferida de la fecha para la localidad actual, pero sin tiempo. |
%X | Representación preferida de la hora para la localidad actual, pero sin fecha. |
%Y | El año es decimal pero sin siglo (varía de 00 a 99). |
%Y | El año es decimal, incluido el siglo. |
%Z | La zona horaria. |
Uso de GetTeofday para medir el tiempo de ejecución del programa
#incluirProducción:
Este ejemplo muestra que como GetTimeOfday () La función puede usarse para el cálculo del tiempo de ejecución de un programa.
Conclusión
De esta manera, el GetTimeOfday () la función podría usarse en Linux. Para portar el código existente, el GetTimeOfday () La función puede usarse, pero en el nuevo código no debe usarse. clock_gettime () la función se puede usar en lugar de GetTimeOfday ().